Insertion d'informations dans la BD en ligne

Résolu
fad2015 Messages postés 39 Statut Membre -  
jordane45 Messages postés 40050 Statut Modérateur -
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

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:

1 réponse

jordane45 Messages postés 40050 Statut Modérateur 4 756
 
Bonjour,

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
0