Requête + soustraction UPDATE
Résolu
baldwim
Messages postés
16
Date d'inscription
Statut
Membre
Dernière intervention
-
baldwim Messages postés 16 Date d'inscription Statut Membre Dernière intervention -
baldwim Messages postés 16 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je fait deux requêtes et je récupère deux variables pour en faire la soustraction cependant en fesant 1000 - 100 j'obtiens toujours 1000.
Est ce que le problème vien de ma requête ou de mes variables ?
un peu d'aide serait la bienvenue ^^
<?
session_start();
$base = mysql_connect ('sql3.cluster1.easy-hebergement.net', 'payetontezhl2', 'nimes00');
mysql_select_db ('payetontezhl2', $base);
$query = "SELECT * FROM membre WHERE login='$_SESSION[login]'";
$result = mysql_query($query);
$nombre = mysql_fetch_array($result);
$query2 = 'SELECT * FROM heros where id="'.mysql_escape_string($_GET['id']).'"';
$result2 = mysql_query($query2);
$nombre2 = mysql_fetch_array($result2);
$depart = $nombre[5] ;
$prix = $nombre2[7] ;
$restant = $depart - $prix ;
$query3= "UPDATE membre SET gold='$restant' WHERE login='$_SESSION[login]'";
$result3 = mysql_query($query3);
echo $restant ;
?>
Je fait deux requêtes et je récupère deux variables pour en faire la soustraction cependant en fesant 1000 - 100 j'obtiens toujours 1000.
Est ce que le problème vien de ma requête ou de mes variables ?
un peu d'aide serait la bienvenue ^^
<?
session_start();
$base = mysql_connect ('sql3.cluster1.easy-hebergement.net', 'payetontezhl2', 'nimes00');
mysql_select_db ('payetontezhl2', $base);
$query = "SELECT * FROM membre WHERE login='$_SESSION[login]'";
$result = mysql_query($query);
$nombre = mysql_fetch_array($result);
$query2 = 'SELECT * FROM heros where id="'.mysql_escape_string($_GET['id']).'"';
$result2 = mysql_query($query2);
$nombre2 = mysql_fetch_array($result2);
$depart = $nombre[5] ;
$prix = $nombre2[7] ;
$restant = $depart - $prix ;
$query3= "UPDATE membre SET gold='$restant' WHERE login='$_SESSION[login]'";
$result3 = mysql_query($query3);
echo $restant ;
?>
A voir également:
- Soustraction mysql
- Mysql community server - Télécharger - Bases de données
- Soustraction en anglais excel ✓ - Forum Excel
- Soustraction excel - Guide
- Mysql error 2002 ✓ - Forum Linux / Unix
- Addition et soustraction dans la même formule excel - Forum Excel
7 réponses
j'ai essayer la méthode de stringman, et j'obtiens toujours 1000
Comme j'avais dit que je m'y attendais...
Pourquoi soupçonnes-tu que ça vient de l'appel de ta deuxième variable, alors que tu écrivais à 2h18 que tu avais bien vérifié qu'il y avait 1000 et 100 ?
Mais tu as raison, cette variable est certainement à 0. Tu t'es peut-être trompé en comptant tes champs, pourquoi n'écris-tu pas $prix = $nombre2['nomduchamp'] ; au lieu de $prix = $nombre2[7] ; ? Ça réduit les causes d'erreur
Affiche VRAIMENT $depart et $prix, tu verras bien
Comme j'avais dit que je m'y attendais...
Pourquoi soupçonnes-tu que ça vient de l'appel de ta deuxième variable, alors que tu écrivais à 2h18 que tu avais bien vérifié qu'il y avait 1000 et 100 ?
Mais tu as raison, cette variable est certainement à 0. Tu t'es peut-être trompé en comptant tes champs, pourquoi n'écris-tu pas $prix = $nombre2['nomduchamp'] ; au lieu de $prix = $nombre2[7] ; ? Ça réduit les causes d'erreur
Affiche VRAIMENT $depart et $prix, tu verras bien
Salut,
As tu fais l'affichage de tes requêtes ? as tu ce que tu souhaites ?
Ensuite pourquoi ne pas faire cela en une seule requête ?
As tu un lien entre la table "membre" et la table "heros" ?
As tu fais l'affichage de tes requêtes ? as tu ce que tu souhaites ?
Ensuite pourquoi ne pas faire cela en une seule requête ?
As tu un lien entre la table "membre" et la table "heros" ?
Non car quand je fait :
$depart = $nombre[5] ;
$prix = $nombre2[7] ;
$restant = $depart - $prix ;
j'obtiens 1000 alors que je devrais avoir 900 .
1000-100
$depart = $nombre[5] ;
$prix = $nombre2[7] ;
$restant = $depart - $prix ;
j'obtiens 1000 alors que je devrais avoir 900 .
1000-100
Bonjour
Tu es en train de nous dire que
J'ai beaucoup, beaucoup de mal à te croire. Peux-tu redonner la fin de ton script avec ses echo et ce qu'il affiche ?
Tu es en train de nous dire que
echo $depart; echo $prix; $restant = $depart - $prix ; $query3= "UPDATE membre SET gold='$restant' WHERE login='$_SESSION[login]'"; $result3 = mysql_query($query3); echo $restant ;ça t'affiche 10001001000 ?
J'ai beaucoup, beaucoup de mal à te croire. Peux-tu redonner la fin de ton script avec ses echo et ce qu'il affiche ?
<? session_start(); $base = mysql_connect ('sql3.cluster1.easy-hebergement.net', 'payetontezhl2', 'nimes00'); mysql_select_db ('payetontezhl2', $base); $query = "SELECT * FROM membre WHERE login='$_SESSION[login]'"; $result = mysql_query($query); $nombre = mysql_fetch_array($result); $query2 = 'SELECT * FROM heros where id="'.mysql_escape_string($_GET['id']).'"'; $result2 = mysql_query($query2); $nombre2 = mysql_fetch_array($result2); $depart = $nombre[5] ; $prix = $nombre2[7] ; $restant = $depart - $prix ; $query3= "UPDATE membre SET gold='$restant' WHERE login='$_SESSION[login]'"; $result3 = mysql_query($query3); echo $restant ; ?>
Non ça m'affiche 1000 et pas le calcul de $depart - $ prix
c'est pas difficile a comprendre si on prend le temps de lire correctement le post de départ.
1000 - 100 j'obtiens toujours 1000.
Lorsque je demande echo $restant ; pour savoir le résultat j'obtiens le nombre 1000 alors que je devrais avoir 900. C'est pas compliqué c'est une simple soustraction mais je n'arrive pas à la faire.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
C'est pas difficile à comprendre...
Je te demandais le code avec echo $depart et echo $prix car je suis prêt à parier que ces valeurs ne sont pas celles que tu crois.
Je sais bien que tu n'obtiens pas le résultat voulu, mais je suis persuadé que c'est parce que les données ne sont pas celles que tu crois.
-> Stringman621 : je ne crois pas que le problème vienne du fait que les résultats soient considérés comme des caractères, car il suffit de faire echo "1000" - "100"; pour voir s'afficher 900
Je te demandais le code avec echo $depart et echo $prix car je suis prêt à parier que ces valeurs ne sont pas celles que tu crois.
Je sais bien que tu n'obtiens pas le résultat voulu, mais je suis persuadé que c'est parce que les données ne sont pas celles que tu crois.
-> Stringman621 : je ne crois pas que le problème vienne du fait que les résultats soient considérés comme des caractères, car il suffit de faire echo "1000" - "100"; pour voir s'afficher 900
Alors j'ai essayer la méthode de stringman, et j'obtiens toujours 1000 ... je crois que mon problème viens de l'appel de ma deuxième variable.
Le problème doit venir de ici :/
$query2 = 'SELECT * FROM heros where id="'.mysql_escape_string($_GET['id']).'"'; $result2 = mysql_query($query2); $nombre2 = mysql_fetch_array($result2); $prix = $nombre2[7] ;
Le problème doit venir de ici :/
J'ai enfin résolu mon problème ....
Je vous explique dans ma Page Verif.php je demandais la variable PRIX et la variable TOTALDUCOMPTE. Cependant il ne me trouvais pas Prix car je demandais un GET qui n'existait pas étant donné que mon formulaire sur la page d'avant était un POST.
J'ai donc rajouter un imput dans mon formulaire page d'avant pour récupérer le prix de l'objet en questions. Rajouter $hero = $_POST['hero']; en haut de ma page pour faire passer la requête.
Et enfin tout marche ! je vous remercie tous et désolé si j'ai mal posté ma question.
amicalement
Baldwim
Je vous explique dans ma Page Verif.php je demandais la variable PRIX et la variable TOTALDUCOMPTE. Cependant il ne me trouvais pas Prix car je demandais un GET qui n'existait pas étant donné que mon formulaire sur la page d'avant était un POST.
J'ai donc rajouter un imput dans mon formulaire page d'avant pour récupérer le prix de l'objet en questions. Rajouter $hero = $_POST['hero']; en haut de ma page pour faire passer la requête.
Et enfin tout marche ! je vous remercie tous et désolé si j'ai mal posté ma question.
amicalement
Baldwim