Probleme dans requete

guilstunt Messages postés 52 Date d'inscription jeudi 11 février 2010 Statut Membre Dernière intervention 1 mars 2016 - 25 oct. 2010 à 08:52
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 - 25 oct. 2010 à 13:22
Bonjour a tous,

j'ai un petit probleme dans l'une de mes requetes.

J'ai 2 listes déroulante dont je récupere le résultat, et je voudrais comparer ses 2 résultat avec une conditions.

Si le résultat de la premiere liste déroulante est inferieur a la deuxieme alors on modifie les point maxi de l'adversaires sinon on ne fais rien.

J'ai aucune erreur d'afficher a l'ecran, mais ca ne modifie rien
voici mon code:

<?php
//Si l'action de "valider" a été faite

if(isset($_POST["Valider"]))
{
if (isset($_POST['equipier']) AND isset($_POST['resultat']) AND isset($_POST['adversaire']))
{
$equipier = htmlentities($_POST['equipier']);
$resultat = htmlentities($_POST['resultat']);
$adversaire = htmlentities($_POST['adversaire']);
$fight=mysql_query("select Fightvalue from stats WHERE Clodo=$equipier") or die('Erreur SQL !
'.$fight.mysql_error());

while ($ligne = mysql_fetch_object($fight))
{
$FightvalueEquipier = $ligne->Fightvalue;
}
$fight2=mysql_query("select Maxi from stats WHERE Adversaire=$adversaire") or die('Erreur SQL !
'.$fight2.mysql_error());

while ($ligne1 = mysql_fetch_object($fight2))
{
$FightvalueAdversaire = $ligne1->Fightvalue;
}
if($fight<$fight2);{
$requete=mysql_query("UPDATE stats SET Maxi=$fight WHERE Adversaire=$adversaire");
}
}
}

else{
}
?>

Merci de votre aide

16 réponses

nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
25 oct. 2010 à 10:43
Salut,

Simplement es-tu sur que ca passe sur l'ordre UPDATE et que toutes les valeurs sont reseignées.
Et que l'ordre update générés met a jour la ligne?
0
guilstunt Messages postés 52 Date d'inscription jeudi 11 février 2010 Statut Membre Dernière intervention 1 mars 2016
25 oct. 2010 à 10:49
Non ca ne passe pas l'ordre d'update vu que rien n'est modifié.

Tu as une idée s'il te plait car je galère vraiment?
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
25 oct. 2010 à 11:21
Ma question etait est-ce que toutes les conditions sont réunit pour que le programme passe dans sur l'instruction UPDATE
Il passe peut etre dans le else

??
0
cs_ludwig59 Messages postés 128 Date d'inscription lundi 21 avril 2008 Statut Membre Dernière intervention 6 mai 2011 2
25 oct. 2010 à 11:24
Bonjour

Dans ton code tu met :

if($fight<$fight2);{
$requete=mysql_query("UPDATE stats SET Maxi=$fight WHERE Adversaire=$adversaire");
}

alors que je pense que tu devrais mettre

if($FightvalueEquipier<$FightvalueAdversaire);{
$requete=mysql_query("UPDATE stats SET Maxi=$fight WHERE Adversaire=$adversaire");
}

J'ai juste remplacer fight1 et fight2 par les valeur que tu récupère dans les boucles while.
D'ailleurs si chaque joueur à qu'une seule valeur "Maxi" dans la table stats, tu n'as pas besoin de faire de boucle while.
Tu peux remplacer :

while ($ligne1 = mysql_fetch_object($fight2))
{
$FightvalueAdversaire = $ligne1->Fightvalue;
}

PAR :
$ligne1 = mysql_fetch_object($fight2);
$FightvalueAdversaire = $ligne1->Fightvalue;
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
guilstunt Messages postés 52 Date d'inscription jeudi 11 février 2010 Statut Membre Dernière intervention 1 mars 2016
25 oct. 2010 à 11:34
J'ai remplacer mon code par tes modifs mais il n'y a pas de changement.
La modification ne se fait pas. J'ai pas non plus d'erreur a l'ecran
0
cs_ludwig59 Messages postés 128 Date d'inscription lundi 21 avril 2008 Statut Membre Dernière intervention 6 mai 2011 2
25 oct. 2010 à 11:43
Dans ton if, fait un echo de ta requete :

if($fight<$fight2);{
$sql = "UPDATE stats SET Maxi=$fight WHERE Adversaire=$adversaire";
echo $sql;
$requete=mysql_query($sql);
}

Comme ca tu verra s'il passe dans ta condition et si oui tu verra la requete effectuée
0
cs_ludwig59 Messages postés 128 Date d'inscription lundi 21 avril 2008 Statut Membre Dernière intervention 6 mai 2011 2
25 oct. 2010 à 11:44
Désoler je m'étais trompé de condition :
Et de plus il y avait un ";" en trop qui trainait après ton if
if($FightvalueEquipier<$FightvalueAdversaire){
$sql = "UPDATE stats SET Maxi=$fight WHERE Adversaire=$adversaire";
echo $sql;
$requete=mysql_query($sql);
}
0
guilstunt Messages postés 52 Date d'inscription jeudi 11 février 2010 Statut Membre Dernière intervention 1 mars 2016
25 oct. 2010 à 11:50
Je viens d'essayer mais ce ne modifie toujours rien
meme avec l'echo rien ne s'affiche a l'ecran
0
cs_ludwig59 Messages postés 128 Date d'inscription lundi 21 avril 2008 Statut Membre Dernière intervention 6 mai 2011 2
25 oct. 2010 à 11:52
Es-tu sûr qu'il passe dans tes premières conditions ?
Mets plusieurs echo à différents endroits de ton code (après chaque condition) pour voir à partir de où il s'arrête.
0
guilstunt Messages postés 52 Date d'inscription jeudi 11 février 2010 Statut Membre Dernière intervention 1 mars 2016
25 oct. 2010 à 11:56
Oui car juste avant cette requete j'ai fais un historique et ça s'enregistre tres bien dans ma bdd
0
cs_ludwig59 Messages postés 128 Date d'inscription lundi 21 avril 2008 Statut Membre Dernière intervention 6 mai 2011 2
25 oct. 2010 à 11:59
Peux tu recopier le code de ton fichier avec les modifications et me donner le résultat des valeurs de $FightvalueEquipier et $FightvalueAdversaire
0
guilstunt Messages postés 52 Date d'inscription jeudi 11 février 2010 Statut Membre Dernière intervention 1 mars 2016
25 oct. 2010 à 12:07
Je viens de t'envoyer un MP avec tous les codes de ma page complete et avec une explication plus détaillé

Merci de votre aide
0
cs_ludwig59 Messages postés 128 Date d'inscription lundi 21 avril 2008 Statut Membre Dernière intervention 6 mai 2011 2
25 oct. 2010 à 12:26
ok je regarde et te tiens au courant dès que possible
0
guilstunt Messages postés 52 Date d'inscription jeudi 11 février 2010 Statut Membre Dernière intervention 1 mars 2016
25 oct. 2010 à 12:34
Je suis au Taf si tu a des questions je pourrai y répondre Ue ce soir ou demain matin

Merci
0
cs_ludwig59 Messages postés 128 Date d'inscription lundi 21 avril 2008 Statut Membre Dernière intervention 6 mai 2011 2
25 oct. 2010 à 12:37
Ok je t'ai répondu par MP
0
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
25 oct. 2010 à 13:22
Nous somme sur un forum ici, non ?
Ces MP sont totalement contraire à cet esprit

@Guilstunt :
C'est une blague que tu nous fais ?
Non seulement tu n'as pas la décence de répondre aux personnes qui prennent du temps pour te répondre mais en plus tu ne tiens pas compte de ce qu'ils te disent (ou si peu), sans compter le doublon

Pour mémoire :
http://www.phpcs.com/forum/sujet-REQUETE-UPDATE_1474591.aspx


y a des fois on se demande vraiment pourquoi on réponds à des personnes qui n'en ont rien à foutre de ce qu'on leur dit et qui attendent du code tout fait.


Kohntark -
0
Rejoignez-nous