j'ai une colonne de type enum ('true', 'false') dans une base (MySQL
4.1.13) third-party et j'aimerais modifier la valeur depuis un script
php.
lorsque je fais la modification directement en sql, pas de problème :
UPGRADE participants SET invoiced='true' WHERE personID= 'reg_number'
mais si j'essaye en php
$result_sql = mysql_query("UPDATE participants SET invoiced='true'
WHERE personID='$reg_number' ");
la colonne invoiced n'est pas mise à jour
comment dois préciser la valeur.... (j'ai essayé avec une variable
$true="true" également...)
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Antoun
wrote:
j'ai une colonne de type enum ('true', 'false') dans une base (MySQL 4.1.13) third-party et j'aimerais modifier la valeur depuis un script php. lorsque je fais la modification directement en sql, pas de problème :
UPGRADE participants SET invoiced='true' WHERE personID= 'reg_number' (...)
Tu précises la valeur correctement (une autre façon de faire serait SET invoiced = 1, puisque dans ton cas 'true' est la première valeur du ENUM) et je ne pense pas que ton problème soit lié au type ENUM...
A mon avis, soit tu as une erreur MySQL que tu devrais voir en utilisant mysql_error(), soit ton $reg_number n'existe pas parmi tes participants, et du coup aucun n'est mis à jour. A vérifier avec un echo $reg_number.
Au passage, si c'est vraiment un nombre les apostrophes sont inutiles, voire illogiques :
"UPDATE participants SET invoiced='true' WHERE personID = $reg_number "
Yves@news56rd.b1.woo wrote:
j'ai une colonne de type enum ('true', 'false') dans une base (MySQL
4.1.13) third-party et j'aimerais modifier la valeur depuis un script php.
lorsque je fais la modification directement en sql, pas de problème :
UPGRADE participants SET invoiced='true' WHERE personID= 'reg_number'
(...)
Tu précises la valeur correctement (une autre façon de faire serait SET
invoiced = 1, puisque dans ton cas 'true' est la première valeur du
ENUM) et je ne pense pas que ton problème soit lié au type ENUM...
A mon avis, soit tu as une erreur MySQL que tu devrais voir en utilisant
mysql_error(), soit ton $reg_number n'existe pas parmi tes participants,
et du coup aucun n'est mis à jour. A vérifier avec un echo $reg_number.
Au passage, si c'est vraiment un nombre les apostrophes sont inutiles,
voire illogiques :
"UPDATE participants
SET invoiced='true'
WHERE personID = $reg_number "
j'ai une colonne de type enum ('true', 'false') dans une base (MySQL 4.1.13) third-party et j'aimerais modifier la valeur depuis un script php. lorsque je fais la modification directement en sql, pas de problème :
UPGRADE participants SET invoiced='true' WHERE personID= 'reg_number' (...)
Tu précises la valeur correctement (une autre façon de faire serait SET invoiced = 1, puisque dans ton cas 'true' est la première valeur du ENUM) et je ne pense pas que ton problème soit lié au type ENUM...
A mon avis, soit tu as une erreur MySQL que tu devrais voir en utilisant mysql_error(), soit ton $reg_number n'existe pas parmi tes participants, et du coup aucun n'est mis à jour. A vérifier avec un echo $reg_number.
Au passage, si c'est vraiment un nombre les apostrophes sont inutiles, voire illogiques :
"UPDATE participants SET invoiced='true' WHERE personID = $reg_number "