Calcul en php
Fermé
Nassou22
Messages postés
7
Date d'inscription
dimanche 25 avril 2010
Statut
Membre
Dernière intervention
8 mai 2010
-
26 avril 2010 à 15:01
Neliel Messages postés 6146 Date d'inscription jeudi 9 juillet 2009 Statut Contributeur Dernière intervention 20 mars 2017 - 26 avril 2010 à 17:05
Neliel Messages postés 6146 Date d'inscription jeudi 9 juillet 2009 Statut Contributeur Dernière intervention 20 mars 2017 - 26 avril 2010 à 17:05
A voir également:
- Calcul en php
- Calcul moyenne excel - Guide
- Easy php - Télécharger - Divers Web & Internet
- Calcul charpente bois gratuit - Télécharger - Architecture & Déco
- Logiciel gratuit calcul valeur nutritionnelle - Télécharger - Santé & Bien-être
- Calcul km marche à pied gratuit - Télécharger - Sport
3 réponses
Neliel
Messages postés
6146
Date d'inscription
jeudi 9 juillet 2009
Statut
Contributeur
Dernière intervention
20 mars 2017
1 692
26 avril 2010 à 15:06
26 avril 2010 à 15:06
Bonjour,
$sql= "select max(id) - $chiffre from reservation";
Ce n'est pas bon ça...
max(id) c'est quoi ? Il n'y a pas de variable dans cette instruction...
$sql= "select max(id) - $chiffre from reservation";
Ce n'est pas bon ça...
max(id) c'est quoi ? Il n'y a pas de variable dans cette instruction...
Darkito
Messages postés
1191
Date d'inscription
vendredi 7 décembre 2007
Statut
Membre
Dernière intervention
26 mai 2010
545
26 avril 2010 à 15:12
26 avril 2010 à 15:12
Bonjour,
Dans un premier temps, je pense qu'il y a un souci avec l'affectation de $chiffre.
Il me semble que $_POST['141'] n'ets pas correct.
il serait plus simple de mettre $chiffre=141;
Ensuite, pour des raisons de lisibilité, il vaudrait mieux mettre :
$sql= "select max(id) - ".$chiffre." from reservation";
Dans un premier temps, je pense qu'il y a un souci avec l'affectation de $chiffre.
Il me semble que $_POST['141'] n'ets pas correct.
il serait plus simple de mettre $chiffre=141;
Ensuite, pour des raisons de lisibilité, il vaudrait mieux mettre :
$sql= "select max(id) - ".$chiffre." from reservation";
Nassou22
Messages postés
7
Date d'inscription
dimanche 25 avril 2010
Statut
Membre
Dernière intervention
8 mai 2010
26 avril 2010 à 15:17
26 avril 2010 à 15:17
J'ai testé ce que tu m'a dit,sa fonctionne pas :S
Sa affiche sur la page " Array " ,uniquement sa. Donc je sais pas
Sa affiche sur la page " Array " ,uniquement sa. Donc je sais pas
Neliel
Messages postés
6146
Date d'inscription
jeudi 9 juillet 2009
Statut
Contributeur
Dernière intervention
20 mars 2017
1 692
26 avril 2010 à 15:18
26 avril 2010 à 15:18
Je pense qu'il voulais faire:
$chiffre=141;
$chiffre=141;
fxtaa
Messages postés
1050
Date d'inscription
mardi 20 octobre 2009
Statut
Membre
Dernière intervention
2 avril 2015
74
26 avril 2010 à 16:56
26 avril 2010 à 16:56
Salut,
Avant de passer par php, ta requête fonctionne directement sur mysql ? (en remplacant $chiffre par 141)
Avant de passer par php, ta requête fonctionne directement sur mysql ? (en remplacant $chiffre par 141)
Neliel
Messages postés
6146
Date d'inscription
jeudi 9 juillet 2009
Statut
Contributeur
Dernière intervention
20 mars 2017
1 692
26 avril 2010 à 17:05
26 avril 2010 à 17:05
C'est pourquoi je lui ai dit de rajouter le "die(mysql_error())", si c'est un problème de requête, la fonction le dira...
26 avril 2010 à 15:19
Sa fonctionnai dans un exemple de cours ^^ donc c'est censé fonctionner ici aussi non ?
26 avril 2010 à 15:49
Dans ce cas, tu remplace
$chiffre = $_POST['141'];
par
$chiffre = 141;
$_POST sert uniquement à récupérer des variables envoyés par formulaire avec la méthode du même nom.
Pour la requête SQL, ça ne peut pas fonctionner pour deux raisons:
1. Tu ne peux pas mettre le nom d'une variable entre guillemet et espéré qu'elle soit prix en compte.
exemple:
On ne fait pas:
echo "le prix est de $prix euro";
mais
echo "le prix est de ".$prix."euro";
2. Tout ce qui a entre SELECT et FROM doit correspondre à un nom de champ ou une instruction mysql comme count ou max()...
En somme, tu dois présenter ta requête en deux temps... tu récupère d'abord le max(id) en faisant:
$req1="select max(id) from reservation";
$res1=mysql_query($req1);
$idmax1=mysql_result($req1,0,"max(id)");
echo $idmax1;
et ensuite tu fais le calcul:
$nouvel_id = $idmax - $chiffre;
Et ensuite une nouvelle requête:
$req2 = "select * from reservation where id=".$nouvel_id."";
$res2 = mysql_query($req2);
$don = mysql_fetch_array($res2);
ensuite tu accèdes au champ en faisant: $don['<nom_du_champ>'];
26 avril 2010 à 16:25
La je fais des test depuis tout à l'heure ,mais j'men sor pa!
26 avril 2010 à 16:30
or die(mysql_error()) derrière chaque mysql_query...
$res1 = mysql_query($req1) or die(mysql_error());
$res2 = mysql_query($req2) or die(mysql_error());
Il va t'afficher l'erreur qui bloque la requête...
26 avril 2010 à 16:47
Je te dirais si sa a fonctionner dans la soirée.