Bonsoir.
Je reviens sur ce forum pour vous demander si c'est possible d'utiliser une variable dans une requête préparée.
Avec la commande UPDATE :
1 2 3 4
| $var1 = "nom = :nom, prenom = :prenom, adresse = :adresse, cp = :cp, telephone = :telephone";
$var2 = " ':nom' => nom, ':prenom' => prenom, ':adresse' => adresse, ':cp' => cp, ':telephone' => telephone";
$req = $bdd->prepare("UPDATE ma_table SET ".$ var1." WHERE id = $id");
$req->execute(array($var2)); |
OU
1 2 3
| $var3 = "nom ='$nom', prenom ='$prenom', adresse ='$adresse', cp ='$cp', telephone ='$telephone' ";
$sql = 'UPDATE personnes SET'. $var3.' WHERE id =$id;
$requete=$bdd->query($sql); |
Pour ces 2 exemples la table n'est pas modifiée et pas de message d'erreur.
Avec la commande INSERT INTO.
1 2 3 4
| $var4 : " 'DUPONT','Pierre','1 rue du Ruisseau','77000','01 02 03 04 05' ";
$var5 : "nom, prenom, adresse, cp, telephone";
$sth = $bdd->prepare("INSERT INTO ma_table ($var5) VALUES($var4)");
$sth->execute(); |
OU
$sth = $bdd->exec("INSERT INTO personnes ($var4) VALUES($var5)");
Pour ces 2 exemples rien n'est inséré dans la table et pas de message d'erreur.
Je m'adresse à vous après avoir fait divers test mais je désespère et ne comprends pas pourquoi ça ne fonctionne pas.
Pourriez-vous me donner une explication svp.
Merci d'avance pour votre aide.
Partager