Aller au contenu

phenomenes etranges


covin85

Sujets conseillés

bonjour il se page des chose très etrange en ce moment sur mon site.

1\ Le classement des joueurs:

Les joueurs sont classé avec le code suivant

 $req = mysql_query("SELECT login , piece FROM membre ORDER by piece DESC");			   

while ($myrow = mysql_fetch_array($req)) {

echo "<td>".$myrow["login"]."</td>";
echo "<td>".$myrow["piece"]."</td><tr>";
}

Et le pire de tout c'est que dans phpmyadmin cela le fait aussi

:wacko:

2/Update

J'ai créer un lien permettant de faire augmenter les pieces:

$sql = 'UPDATE membre SET piece=piece+100';
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());

Ce code marche,donc logiquement je fait EXACTEMENT pareille pour augementer la "force" :

$sql = 'UPDATE membre SET force=force+100';

mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());

et regarder ce que cela me repond:

Erreur SQL !UPDATE membre SET force=force+100

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'force=force+100' at line 1

Dite moi que je ne suis pas fous!! :(

Lien vers le commentaire
Partager sur d’autres sites

J'ai supprimé tes images énormes avec de larges bandeaux noirs.

D'autant plus qu'elles ne permettent pas de comprendre ton problème qui est mal expliqué !

Si tu es surpris de l'ordre de classement des résultats (qui n'est pas correct apparemment) regarde comment tu as défini le champ 'piece'.

Si tu veux un classement numérique (là il est alphabétique), il faut le définir comme "integer" et non comme "char" ou "varchar" :)

En char, on classera: 1, 200, 30, 8

Et en integer: 1, 8, 30, 200

Ca change, non ?

Dan

Lien vers le commentaire
Partager sur d’autres sites

+1... je comprends rien non plus...

A part peut-être une piste pour l'erreur dans le UPDATE : force n'est peut-être pas dans un type numérique...

A+

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

"FORCE" (ou tout autre variation de case, comme "force") est un mot réservé MySQL ... à ne jamais utiliser comme nom de champ ou de table lorsqu'on crée un schéma de base de données...change le nom de ton champ dans la base de données.

(Tu as pu l'utiliser pour créer ta table car dans une requête CREATE ce mot clé n'est pas "réservé"...mais dans un UPDATE oui).

Bonne continuation.

Lien vers le commentaire
Partager sur d’autres sites

A noter que l'on peut échapper le nom des champs avec des guillemets inversés ` pour éviter ces problèmes :

`timestamp` | `force`

Attention toutefois : cette synthaxe n'est je crois supportée que par MySQL :rolleyes:

Lien vers le commentaire
Partager sur d’autres sites

Posté (modifié)

daccord vous avez resolu tous se qui me parraissait tres bisard merci beaucoup,

désolé pour le texte implicite mais c'est que j'ai oublier des phrases :(

Dernière question,pourquoi ya t-il un decalage dans la classement,regarder le membre test et monter beaucoup plus haut:

http://img225.imageshack.us/my.php?image=sanstitre6lg1.jpg

Modifié par covin85
Lien vers le commentaire
Partager sur d’autres sites

Qu'entends-tu par "regarder le membre test et monter beaucoup plus haut" ?

Fais un petit effort au niveau de la grammaire, je t'avoue que ça joue beaucoup lorsqu'il s'agit de comprendre... on n'est pas à la dictées de Pivot non plus, mais cela fait partie des règles du forum, merci d'avance.

Si je me force un peu et que je traduis ça par "regardez le membre test est monté beaucoup plus haut", je miserait plutôt sur un problème (X)HTML/CSS ... si tu as utilisé un tableau pour présenter ces lignes, regarde si tu ne t'es pas trompé dans la syntaxe de celui-ci pour une des lignes...

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...