Inserer variable php dans"champ" requete insert
Résolu
mont_dani
Messages postés
232
Date d'inscription
Statut
Membre
Dernière intervention
-
mont_dani Messages postés 232 Date d'inscription Statut Membre Dernière intervention -
mont_dani Messages postés 232 Date d'inscription Statut Membre Dernière intervention -
Bonjour
J'ai besoin dune fonction que j'utiliderai dans differernt endroit de ma web pour inserer les donnees dans ma db.
function insererdonnees($sql_texto) { //variable pour la table $tabla = "grupo"; //renvoi la valeur //variable pour les champs ==> produit un erreur $campo_1 ="pais"; $campo_2 ="grupo"; $campo_3 ="enlace"; //variable pour les valeurs des champs $var_1 ="gb";//renvoi la valeur $var_2 ="new"; $var_3 ="lien vers la page"; //variable pour les valeurs des champs binparam $value_1 ="pais";//renvoi la valeur $value_2 ="grupo"; $value_3 = "enlace"; //concatener les variable en texte $conc ='$value_pais ="pais"; $value_grupo ="grupo"; $value_enlace = "enlace";'; //Calcul nb $ $nb_var = substr_count($conc, "$"); $nb_var_1 = $nb_var-1; $qu_var = str_repeat("?,", $nb_var_1); $qu_var_ok = $qu_var."?"; // renvoi le nombre de ? necessaire suivant le nombre de champ //preparer la variable des champs de la table $lista_campo = array(); for ($i=1; $i<=$nb_var; $i++) { $lista_campo[] = "\$campo_".$i.","; } $campo_lista = implode("", $lista_campo); $champ=substr($campo_lista,0,-1); echo $champ; // donne $campo_1,$campo_2,$campo_3 $insert_nuevo="insert into $tabla($champ) values($qu_var_ok)"; $insert_nuevo = $sql_texto->prepare($insert_nuevo); $insert_nuevo->bindParam(':$value_1',$var_1,PDO::PARAM_STR, 25); $insert_nuevo->bindParam(':$value_2',$var_2,PDO::PARAM_STR, 25); $insert_nuevo->bindParam(':$value_3',$var_3,PDO::PARAM_STR,25); $insert_nuevo->execute([$var_1,$var_2,$var_3]); $insert_nuevo->closeCursor(); //header('Location: ad_page_inicio.php'); }
Le probleme est que lorsque je met une variable a la place des noms des champs de la table, j'ai une erreur
SQLSTATE[42S22]: Column not found: 1054
Comment puis-je resoudre mon probleme?
merci pour votre aide
A voir également:
- Inserer variable php dans"champ" requete insert
- Insérer vidéo dans powerpoint - Guide
- Insérer signature word - Guide
- Touche insert - Guide
- Insérer liste déroulante excel - Guide
- Insérer sommaire word - Guide
3 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour,
as-tu envisagé de faire plutôt ainsi?
$campos = array(1 => "pais", 2 => "grupo", 3 => "enlace");