[RESOLU] Faire varier le nom d'un champ

Petit nouveau ! | 7 Messages

21 déc. 2018, 10:16

Bonjour,

Je cherche à mettre à jour une table mais le champ à mettre à jour doit varier selon la variable $valeur.
Le code pourrait ressembler à celui-ci:

Code : Tout sélectionner

$SQL = $pdo->prepare(" UPDATE `ma_table` SET $ma_variable=:ma_valeur )"; $SQL->execute(array( ':ma_valeur' => $valeur, ));
Est-ce possible de faire ainsi varier le nom d'un champ selon une variable ?
Merci d'avance

Eléphant du PHP | 385 Messages

21 déc. 2018, 17:08

Oui, pourquoi cela ne fonctionne pas, tu as une erreur?

Petit nouveau ! | 7 Messages

21 déc. 2018, 18:34

Bonsoir kevin254kl et merci de ta réponse.

Effectivement, j'obtiens l'erreur suivante : Parse error: syntax error, unexpected ';' in Line 21.

La ligne 21 correspond à la ligne

Code : Tout sélectionner

$SQL = $pdo->prepare(" UPDATE `ma_table` SET $ma_variable=:ma_valeur )";

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

21 déc. 2018, 18:39

Problème d'ordre de guillemets et de parenthèse ;-)
Quand tout le reste a échoué, lisez le mode d'emploi...

Petit nouveau ! | 7 Messages

21 déc. 2018, 18:55

Bonsoir @rthur,

Vu. Merci.

Du coup, j'ai une nouvelle erreur:

Code : Tout sélectionner

Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42000]: Syntax error or access violation: 1064 Erreur de syntaxe près de
Et ceci au niveau de la dernière ligne.
Penses-tu que je puisse, comme je le disais au début, mettre à jour un champ ou un autre selon la valeur d'une variable ?
Modifié en dernier par tintin8856 le 21 déc. 2018, 19:00, modifié 1 fois.

Petit nouveau ! | 7 Messages

31 déc. 2018, 19:26

N'importe quoi.... Ça marche parfaitement.
Merci @rthur.