Insertion d'informations dans la BD en ligne
Résolu
fad2015
Messages postés
38
Date d'inscription
Statut
Membre
Dernière intervention
-
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
je développe un site en ligne sur wordpress, j'ai créé une BD avec une table client est les champs nom, prenom.
je veux remplir cette petite table à partir d'un formulaire que j'ai créé avec la méthode poste. J'arrive à bien récupérer les informations du formulaire, quand je lance ma requête ça affiche "insertion effectuee" mais lles info ne vont pas dans la BD. pourtant quand je le fais en local ça marche.
mon code php
pouvez vous m'aider?
merci d'avance.
je développe un site en ligne sur wordpress, j'ai créé une BD avec une table client est les champs nom, prenom.
je veux remplir cette petite table à partir d'un formulaire que j'ai créé avec la méthode poste. J'arrive à bien récupérer les informations du formulaire, quand je lance ma requête ça affiche "insertion effectuee" mais lles info ne vont pas dans la BD. pourtant quand je le fais en local ça marche.
mon code php
if((isset[$_POST['nom']) && isset($_POST['prenom'])){
$sql='insert into client values("'.$_POST['nom'].'","'.$_POST['nom'].'")';
$rep=mysql_query($sql);
if($rep)
{echo'insertion effectuee';}
else{
echo'insertion echouee';}
}
else{echo'variables inconnues';}
pouvez vous m'aider?
merci d'avance.
A voir également:
- Insertion d'informations dans la BD en ligne
- Partager photos en ligne - Guide
- Mètre en ligne - Guide
- Aller à la ligne excel - Guide
- Entrer les informations d'identification reseau - Guide
- Touche insertion clavier - Guide
1 réponse
Bonjour,
Je te propose les choses suivantes :
1 - Indiquer dans ta requête le nom des champs à mettre à jour
sous la forme :
2 - D'utiliser le Last_insert_id pour savoir si ta requête c'est bien executée et savoir sous quel ID a été enregistré ta ligne ( pour ça.. si ce n'est pas déjà le cas, ajoute un champ auto-incrémenté dans ta table)
Donc voila à quoi cela pourrait ressembler:
Cordialement,
Jordane
Je te propose les choses suivantes :
1 - Indiquer dans ta requête le nom des champs à mettre à jour
sous la forme :
INSERT INTO table (nomChamp1,nomChamp2) VALUES('valeur1','valeur2')
2 - D'utiliser le Last_insert_id pour savoir si ta requête c'est bien executée et savoir sous quel ID a été enregistré ta ligne ( pour ça.. si ce n'est pas déjà le cas, ajoute un champ auto-incrémenté dans ta table)
Donc voila à quoi cela pourrait ressembler:
$nom = isset[$_POST['nom']) ?$_POST['nom'] : NULL; $prenom = isset[$_POST['prenom']) ?$_POST['prenom'] : NULL; if($nom && $prenom ){ $sql=insert into client (nom,prenom) values('$nom','$prenom'); $rep=mysql_query($sql); $id_insert = mysql_insert_id(); if($id_insert){ echo "insertion effectuée -id:".$id_insert; }else{ echo "insertion echouee"; echo "<br>Erreur : ". mysql_error() ."<br>Requete:<br>".$sql } }else{ echo'variables inconnues'; }
Cordialement,
Jordane