A voir également:
- Probleme UPDATE mysql
- Windows update bloqué - Guide
- Asus live update - Télécharger - Utilitaires
- Windows update 0x80070643 - Accueil - Windows
- Mysql community server - Télécharger - Bases de données
- Winget update - Guide
3 réponses
Utilisateur anonyme
28 déc. 2008 à 09:25
28 déc. 2008 à 09:25
bonjour,
$query = "UPDATE combattant SET force='".$ForceEnPlus."' where login='".$login'.";
$sql = mysql_query($query) or die("erreur");
--
$query = "UPDATE combattant SET force='".$ForceEnPlus."' where login='".$login'.";
$sql = mysql_query($query) or die("erreur");
--
Bonjour
giheller, tu n'as rien changé du tout à la requête de Kasp3r. Pourquoi ça changerait ?
Kasp3r, 'force' a une signification en Mysql. Si tu veux absolument l'utiliser comme nom de champ, entoure-le d'accents graves : `force`
Il est plus sage d'entourer systématiquement les noms de tables et de champs de `` en mysql.
Et de faire die (mysql_error()) qui te donne quelques précisions sur la cause de l'erreur, alors qu'un simple die ("erreur") ne t'apprend pas grand chose.
giheller, tu n'as rien changé du tout à la requête de Kasp3r. Pourquoi ça changerait ?
Kasp3r, 'force' a une signification en Mysql. Si tu veux absolument l'utiliser comme nom de champ, entoure-le d'accents graves : `force`
Il est plus sage d'entourer systématiquement les noms de tables et de champs de `` en mysql.
Et de faire die (mysql_error()) qui te donne quelques précisions sur la cause de l'erreur, alors qu'un simple die ("erreur") ne t'apprend pas grand chose.
Bonjour,
j'ai séparé les varaibles avec un $ des constantes de la requête.
si cela ne change rien (en théorie) il s'avère que certaines fois ça change (même si on n'est pas d'accord (moi non plus) mais c'est une réalité).
set force tel qu'il est écrit laisse supposer qu'une colonne de la table a ce nom.
et tant que les questions ne seront pas plus précises, les réponses seront du même ordre.
force est un mot réservé il faut donc écrire set `force`= ... avec des backquotes
Bonne journée à toi
j'ai séparé les varaibles avec un $ des constantes de la requête.
si cela ne change rien (en théorie) il s'avère que certaines fois ça change (même si on n'est pas d'accord (moi non plus) mais c'est une réalité).
set force tel qu'il est écrit laisse supposer qu'une colonne de la table a ce nom.
et tant que les questions ne seront pas plus précises, les réponses seront du même ordre.
force est un mot réservé il faut donc écrire set `force`= ... avec des backquotes
Bonne journée à toi
Je maintiens que tu n'as rien changé à la requête. Tu as légèrement modifié le programme, d'accord, mais CERTAINEMENT PAS la requête.
On peut vérifier sur un exemple, si $ForceEnPlus vaut 5 et $login vaut machin, la requête de Kasp3r est :
UPDATE combattant SET force='5' where login='machin'
La tienne est :
UPDATE combattant SET force='5' where login='machin'
(si on corrige la faute de frappe que tu avais faite à la fin)
Ça n'est pas la même requête ?
si cela ne change rien (en théorie) il s'avère que certaines fois ça change (même si on n'est pas d'accord (moi non plus) mais c'est une réalité). . Je te défie de trouver des valeurs de $ForceEnPlus et $login pour lesquelles vos deux programmes conduisent à des requêtes différentes. Tu n'as pas affirmé que c'était une réalité sans en avoir de preuves, n'est-ce pas ?
On peut vérifier sur un exemple, si $ForceEnPlus vaut 5 et $login vaut machin, la requête de Kasp3r est :
UPDATE combattant SET force='5' where login='machin'
La tienne est :
UPDATE combattant SET force='5' where login='machin'
(si on corrige la faute de frappe que tu avais faite à la fin)
Ça n'est pas la même requête ?
si cela ne change rien (en théorie) il s'avère que certaines fois ça change (même si on n'est pas d'accord (moi non plus) mais c'est une réalité). . Je te défie de trouver des valeurs de $ForceEnPlus et $login pour lesquelles vos deux programmes conduisent à des requêtes différentes. Tu n'as pas affirmé que c'était une réalité sans en avoir de preuves, n'est-ce pas ?
Je ne souhaite pas polémiquer (je t'accorde que le mot défi était très maladroit et je te prie de m'excuser) je veux simplement être un peu moins idiot ce soir que ce matin.
Comme personnellement je n'ai jamais rencontré aucun comportement qui ne s'explique pas par les règles du PHP, je te demande comme un service de me fournir un de ces contre-exemples.
Merci d'avance.
Comme personnellement je n'ai jamais rencontré aucun comportement qui ne s'explique pas par les règles du PHP, je te demande comme un service de me fournir un de ces contre-exemples.
Merci d'avance.
Bonjour,
la syntaxe utilisée permet de mieux distinguer (en les isolant entre les symboles de concaténation) les variables.
on rencontre (plus souvent qu'on ne le pense) certains oublis de quote qui entrainent des erreurs; c'est pourquoi ma première réaction.
comme tu le dis : le résultat est absolument identique (mais le codage est différent) quand il n'y a pas d'erreur de codage
ainsi et encore comme tu le dis ce n'est pas le comportement de PHP qui est en cause, mais l'écriture des utilisateurs.
par expérience, je préconise la syntaxe que j'ai donnée.
JL
--
la syntaxe utilisée permet de mieux distinguer (en les isolant entre les symboles de concaténation) les variables.
on rencontre (plus souvent qu'on ne le pense) certains oublis de quote qui entrainent des erreurs; c'est pourquoi ma première réaction.
comme tu le dis : le résultat est absolument identique (mais le codage est différent) quand il n'y a pas d'erreur de codage
ainsi et encore comme tu le dis ce n'est pas le comportement de PHP qui est en cause, mais l'écriture des utilisateurs.
par expérience, je préconise la syntaxe que j'ai donnée.
JL
--