JeuWeb - Crée ton jeu par navigateur
Problem dans une fonction attaque - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : Problem dans une fonction attaque (/showthread.php?tid=905)

Pages : 1 2 3 4


Problem dans une fonction attaque - genosite - 05-03-2007




RE: Problem dans une fonction attaque - nemesis_elite - 05-03-2007

Salut, ca peut peut-etre venir de la :
Code PHP :
<?php 
$sql
= mysql_query('SELECT "defence" , "force" , "vie" FROM Joueur WHERE Joueur=".$adversaire."') or die(mysql_error());

c'est pas plutot
Code PHP :
<?php 
$sql
= mysql_query('SELECT defence , force , vie FROM Joueur WHERE Joueur=".$adversaire."') or die(mysql_error());



RE: Problem dans une fonction attaque - genosite - 05-03-2007

oui mais si jenleve les " ya une erreur sql puisque force est detecter comme une commande lol


RE: Problem dans une fonction attaque - Roworll - 05-03-2007

Ca m'étonne que ça fasse une erreur SQL en enlevant les "...

Perso, en me basant sur la requete de l'update
Code PHP :
<?php 
"UPDATE Joueur Set vie='$vie' WHERE `Joueur`='$adversaire'"
Je ferai ta requête de select dans ce gout là :
Code PHP :
<?php 
$sql
= mysql_query("SELECT defence, force, vie FROM Joueur WHERE Joueur='$adversaire'") or die(mysql_error());

Ce n'est pas hyper sécurisé (gros risque d'injection SQL) mais ça devrait fonctionner.

De plus l'appel
Code PHP :
<?php 
attaque
(genosite, marco);
ne devrait pas plutôt être
Code PHP :
<?php 
attaque
('genosite', 'marco');



RE: Problem dans une fonction attaque - pascal - 05-03-2007

force est un mot réservé de SQL, tu dois le changer tant qu'il est encore temps!

( _bon, il y a une technique pour le garder, mais elle est casse-pied et pas très standard, alors je ne la propose pas_ )

A+

Pascal


RE: Problem dans une fonction attaque - Plume - 05-03-2007

Les mots réservés pour SQL sont listés dans la doc SQL. De toute façon, même sans ça ta requète est syntaxiquement incorrecte. Prends celle de Roworll qui est déjà mieux, sans oublié de trouver unne petite variante pour `force`. {Oups, j'ai donné la solution ^^ Comprenne qui pourra Smile}


RE: Problem dans une fonction attaque - grouik5962 - 05-03-2007

Pareil j'ai eu un soucis avec force dans ma requête quand je récupérais la force de mes chameaux, bah pour régler le problème mon champ s'appelle maintenant forc et je m'en porte pas plus mal. essaye tu verra çà fait du bien :-)


RE: Problem dans une fonction attaque - genosite - 05-03-2007

toujours le même problème mais cette fois ci dans phpmyadmin il affiche les donne jai cible le problème mais je ne comprend pas
Code PHP :
<?php 
$sql
= mysql_query('SELECT `defence` , `force` , `vie` FROM Joueur WHERE Joueur=".$adversaire."') or die(mysql_error());
$data = mysql_fetch_array($sql);
$force=$data['force'];



RE: Problem dans une fonction attaque - genosite - 05-03-2007

voicie la page test http://lwdev4.free.fr/jeux/test/test3.php


RE: Problem dans une fonction attaque - Sephi-Chan - 06-03-2007

Hm, au risque de ne pas répondre au sujet, je voulais savoir si il était plus correct de toujours encadrer les champs des ` ou bien est-ce là plus un bricolage ?

A mon sens, on a tout à y gagner à les mettre, mais je peux me tromper. Quelqu'un aurait une réponse plus étoffée ? Smile


Sephi-Chan