Formulaire de contact php

Bonjour,
je créer un site et je suis a un formulaire, j'ai suivies ce tuto http://www.youtube.com/watch?feature=player_embedded&v=i8byuKn_r1E
j'ai fais le formulaire sans problème le seul problème et que la connexion avec la base de donnée ne fonctionne pas j'ai aucune erreur qui s'affiche seul que quand je remplie le formulaire et que j'appuie sur valider je n'est pas les informations dans ma base de donnée pourquoi ?

Le code :
<?php
$nou=mysql_query("INSERT INTO clients VALUES('$nom','$prénom','$date_de_naissance','$adresse','$ville','$cp','$pays,'civil','email')");
$serveur = "localhost";
$base = "phplogin";
$user = "client";
$pass = "contact14528";
?>
<form method="POST" action="nouveauxclient.php">
<p>Nom</p>
<input type="text" name="Nom"/>
<p>Prénom</p>
<input type="text" name="Prénom"/>
<p>Date de naissance</p>
<input type="text" name="Date_de_naissance"/>
<p>Adresse</p>
<input type="text" name="Adresse"/>
<p>Ville</p>
<input type="text" name="Ville"/>
<p>Code Postal</p>
<input type="text" name="Cp"/>
<p>Pays</p>
<input type="text" name="Pays"/>
<p>Civil</p>
<input type="text" name="Civil"/>
<p>Email</p>
<input type="text" name="Email"/><br/><br>
<input type="submit" name="Validez" value="Valider"/>
</form>


Merci d'avoir lu mon topic !

17 réponses

Résumé de la discussion

Le problème principal est que les données du formulaire ne s’insèrent pas dans la base de données, faute à des erreurs PHP et SQL dans la requête INSERT. Des erreurs courantes incluent une connexion non établie avant la requête, des noms de colonnes ou variables mal écrits (accents, casse) et un INSERT sans liste de colonnes ni virgule finale. Pour corriger, établir la connexion avant mysql_query et utiliser des noms de variables cohérents sans accents, puis appeler la requête INSERT en listant explicitement les colonnes et en évitant les virgules superflues. En cas d'erreurs visibles, afficher les messages SQL via die(mysql_error()) permet d'identifier rapidement les problèmes de syntaxe, comme le mauvais nom de champ ou une virgule supplémentaire.

Bobot (l’IA à votre service)
  1. Normalement ce code est bon ?

    <?php 
    if(isset($_POST['$Nom']) && isset($_POST['$Prenom']) && isset($_POST['$Date_de_naissance']) && isset($_POST['$Adresse']) && isset($_POST['$Ville']) && isset($_POST['$Cp']) && isset($_POST['$Pays']) && isset($_POST['$Civil']) && isset($_POST['$Email']) && $_POST['Nom'] != "" && $_POST['Prenom'] != "" && $_POST['Date_de_naissance'] != "" && $_POST['Adresse'] != "" && $_POST['Ville'] != "" && $_POST['Cp'] != "" && $_POST['Pays'] != "" && $_POST['Civil'] != "" && $_POST['Email'] != ""){ 
        $Nom = $_POST['Nom'];  
        $Prenom =$_POST['Prenom'];  
     $Date_de_naissance = $_POST['Date_de_naissance'];  
     $Adresse =$_POST['Adresse'];  
     $Ville = $_POST['Ville'];  
     $Cp= $_POST['Cp'];  
     $Pays = $_POST['Pays'];  
        $Civil = $_POST['Civil'];  
     $Email = $_POST['Email'];  
     $connect= mysql_connect('localhost','client','31p71h49');  
        mysql_select_db("phplogin");   
        mysql_query("INSERT INTO clients (Nom,Prenom,Date_de_naissance,Adresse,Ville,Cp,Pays,Civil,Email)VALUES('$Nom','$Prenom','$Date_de_naissance','$Adresse','$Ville','$Cp','$Pays','$Civil','$Email')");    
     } 
    ?> 
    <form method="POST" action="nouveauxclient.php"> 
    <label>Nom</label> 
    <input type="text" name="Nom"/> 
    <p>Prenom</p> 
    <input type="text" name="Prenom"/> 
    <p>Date de naissance</p> 
    <input type="text" name="Date_de_naissance"/> 
    <p>Adresse</p> 
    <input type="text" name="Adresse"/> 
    <p>Ville</p> 
    <input type="text" name="Ville"/> 
    <p>Code Postal</p> 
    <input type="text" name="Cp"/> 
    <p>Pays</p> 
    <input type="text" name="Pays"/> 
    <p>Civil</p> 
    <input type="text" name="Civil"/> 
    <p>Email</p> 
    <input type="text" name="Email"/><br/><br> 
    <input type="submit" name="Validez" value="Valider"/> 
    </form>
    1. on y est presque! vérifie la structure de ta table clients, surtout sur le champ date de naissance. Tu as un screen de ta table stp?
    2. Oui le voici http://img15.hostingpics.net/pics/897544screen1.png
    3. Ok merci. Alors, rempli ton formulaire avec une date genre 1982-03-31 , dak? et dis moi si c'est rentré dans la BD
    4. Ce n'est pas rentré dans la base
    5. c'est presque bon mais dans ta base, renomme le champ Prénom par Prenom et les champs telephone, mets les à null = oui (toujours dans ta base
  2. Voici le code
    <?php
    if(isset($Nom) && isset($Prenom) && isset($Date_de_naissance) && isset($Adresse) && isset($Ville) && isset($Cp) && isset($Pays) && isset($Civil) && isset($Email) && $Nom != "" && $Prenom != "" && $Date_de_naissance != "" && $Adresse != "" && $Ville != "" && $Cp != "" && $Pays != "" && $Civil != "" && $Email != ""){
        $Nom = $_POST['Nom']; 
        $Prenom =$_POST['Prenom']; 
    	$Date_de_naissance = $_POST['Date_de_naissance']; 
    	$Adresse =$_POST['Adresse']; 
    	$Ville = $_POST['Ville']; 
    	$Cp= $_POST['Cp']; 
    	$Pays = $_POST['Pays']; 
        $Civil = $_POST['Civil']; 
    	$Email = $_POST['Email']; 
     $connect= mysql_connect('localhost','test','Sua6XMwEnecGrvYJ'); 
        mysql_select_db("phplogin");  
        mysql_query("INSERT INTO clients (Nom,Prenom,Date_de_naissance,Adresse,Ville,Cp,Pays,Civil,Email)VALUES('$Nom','$Prenom','$Date_de_naissance','$Adresse','$Ville','$Cp','$Pays','$Civil','$Email')");   
    	}
    
    ?>
    <form method="POST" action="nouveauxclient.php">
    <p>Nom</p>
    <input type="text" name="Nom"/>
    <p>Prenom</p>
    <input type="text" name="Prenom"/>
    <p>Date de naissance</p>
    <input type="text" name="Date_de_naissance"/>
    <p>Adresse</p>
    <input type="text" name="Adresse"/>
    <p>Ville</p>
    <input type="text" name="Ville"/>
    <p>Code Postal</p>
    <input type="text" name="Cp"/>
    <p>Pays</p>
    <input type="text" name="Pays"/>
    <p>Civil</p>
    <input type="text" name="Civil"/>
    <p>Email</p>
    <input type="text" name="Email"/><br/><br>
    <input type="submit" name="Validez" value="Valider"/>
    </form>
    Est-il bon ?
    1. Non ce n'est pas bon !

      La vérification doit s'effectuer sur $_POST['Nom'] et non sur $Nom !

      Observe mieux ce que je viens de t'expliquer et essaie de comprendre !
    2. donc ça fait
      $_POST['Nom'] $Nom = ;
      ?
    3. Ça fait très précisément ce que j'ai écrit, à savoir :
      if (isset($_POST['Nom']) && isset($_POST['Prenom']) && $_POST['Nom'] != "" &&  $_POST['Prenom'] != "") {  
  3. Merci le code est terminé mais une petit erreur reste donc voici le code
    <?php
    
        $Nom = $_POST['Nom']; 
        $Prenom =$_POST['Prenom']; 
    	$Date_de_naissance = $_POST['Date_de_naissance']; 
    	$Adresse =$_POST['Adresse']; 
    	$Ville = $_POST['Ville']; 
    	$Cp= $_POST['Cp']; 
    	$Pays = $_POST['Pays']; 
        $Civil = $_POST['Civil']; 
    	$Email = $_POST['Email']; 
    	if(isset($Nom) && isset($Prenom) && isset($Date_de_naissance) && isset($Adresse) && isset($Ville) && isset($Cp) && isset($Pays) && isset($Civil) && isset($Email) && $Nom != "" && $Prenom != "" && $Date_de_naissance != "" && $Adresse != "" && $Ville != "" && $Cp != "" && $Pays != "" && $Civil != "" && $Email != ""){
     $connect= mysql_connect('localhost','client','31p71h49'); 
        mysql_select_db("phplogin");  
        mysql_query("INSERT INTO clients (Nom, Prenom,Date_de_naissance,Adresse,Ville,Cp,Pays,Civil,Email,)VALUES('$nom','$prenom','$date_de_naissance','$adresse','$ville','$cp','$pays','$civil','$email')");   
    	}
    
    ?>
    <form method="POST" action="nouveauxclient.php">
    <p>Nom</p>
    <input type="text" name="Nom"/>
    <p>Prénom</p>
    <input type="text" name="Prénom"/>
    <p>Date de naissance</p>
    <input type="text" name="Date_de_naissance"/>
    <p>Adresse</p>
    <input type="text" name="Adresse"/>
    <p>Ville</p>
    <input type="text" name="Ville"/>
    <p>Code Postal</p>
    <input type="text" name="Cp"/>
    <p>Pays</p>
    <input type="text" name="Pays"/>
    <p>Civil</p>
    <input type="text" name="Civil"/>
    <p>Email</p>
    <input type="text" name="Email"/><br/><br>
    <input type="submit" name="Validez" value="Valider"/>
    </form>


    Et voici l'erreur

    (!) Notice: Undefined index: Prenom dans C: \ wamp \ www \ nouveauxclient.php en ligne 4
    Pile d'appels
    # Temps Mémoire Fonction Emplacement
    1 0,0012 691808 {Main} () .. \ Nouveauxclient.php : 0

    Mais maintenant je vois le formulaire !
    1. L'erreur que tu obtiens proviens du fait que tu as mis un accent dans le nom de ton input dans ton formulaire.

      Et l'erreur est obtenue justement parce que $_POST['Prenom'] n'est pas défini...

      C'est pour ça qu'il faut effectuer la vérification AVANT de créer ta variable intermédiaire $Prenom, comme je te l'ai expliqué avec cet exemple :
      if (isset($_POST['nom']) && isset($_POST['prenom']) && $_POST['nom'] != "" && $_POST['prenom'] != "") { 
          $nom = $_POST['nom']; 
          $prenom = $_POST['prenom']; 
      }
      


      PS : Tu utilises toujours dans ton INSERT des variables écrites entièrement en minuscules... ($Nom et $nom sont différents)
    2. Donc dans mon insert je doit metre nom en Nom ?
    3. C'est une solution oui. Soit tu utilises $nom partout, ou soit tu utilises $Nom partout.
    4. Merci il n'y as plus d'erreur mais les info ne vont pas dans la base pourquoi voici mon code
      <?php
      
          $Nom = $_POST['Nom']; 
          $Prenom =$_POST['Prenom']; 
      	$Date_de_naissance = $_POST['Date_de_naissance']; 
      	$Adresse =$_POST['Adresse']; 
      	$Ville = $_POST['Ville']; 
      	$Cp= $_POST['Cp']; 
      	$Pays = $_POST['Pays']; 
          $Civil = $_POST['Civil']; 
      	$Email = $_POST['Email']; 
      	if(isset($Nom) && isset($Prenom) && isset($Date_de_naissance) && isset($Adresse) && isset($Ville) && isset($Cp) && isset($Pays) && isset($Civil) && isset($Email) && $Nom != "" && $Prenom != "" && $Date_de_naissance != "" && $Adresse != "" && $Ville != "" && $Cp != "" && $Pays != "" && $Civil != "" && $Email != ""){
       $connect= mysql_connect('localhost','client','31p71h49'); 
          mysql_select_db("phplogin");  
          mysql_query("INSERT INTO clients (Nom,Prenom,Date_de_naissance,Adresse,Ville,Cp,Pays,Civil,Email,)VALUES('$Nom','$Prenom','$Date_de_naissance','$Adresse','$Ville','$Cp','$Pays','$Civil','$Email')");   
      	}
      
      ?>
      <form method="POST" action="nouveauxclient.php">
      <p>Nom</p>
      <input type="text" name="Nom"/>
      <p>Prenom</p>
      <input type="text" name="Prenom"/>
      <p>Date de naissance</p>
      <input type="text" name="Date_de_naissance"/>
      <p>Adresse</p>
      <input type="text" name="Adresse"/>
      <p>Ville</p>
      <input type="text" name="Ville"/>
      <p>Code Postal</p>
      <input type="text" name="Cp"/>
      <p>Pays</p>
      <input type="text" name="Pays"/>
      <p>Civil</p>
      <input type="text" name="Civil"/>
      <p>Email</p>
      <input type="text" name="Email"/><br/><br>
      <input type="submit" name="Validez" value="Valider"/>
      </form>
    5. Tu n'as toujours pas compris l'utilité du recours à isset()... Ce n'est pas $Nom qu'il faut contrôler, mais $_POST['Nom'], comme je te l'ai montré dans mon exemple. Il faut vérifier si oui ou non $_POST['Nom'] existe avant de l'utiliser dans ton code.

      Par conséquent ton if doit également être effectué avant d'assigner $_POST['Nom'] à $Nom.

      Et si tes données ne sont pas insérées, c'est parce qu'il y a toujours une virgule en trop dans ton INSERT après "Email".
  4. Donc le code final est
    <?php
    
        $Nom = $_POST['Nom']; 
        $Prenom =$_POST['Prenom']; 
    	$Date_de_naissance = $_POST['Date_de_naissance']; 
    	$Adresse =$_POST['Adresse']; 
    	$Ville = $_POST['Ville']; 
    	$Cp= $_POST['Cp']; 
    	$Pays = $_POST['Pays']; 
        $Civil = $_POST['Civil']; 
    	$Email = $_POST['Email']; 
    if (isset($Nom!=""$Prenom!=""$Date_de_naissance!=""$Adresse!=""$Ville!=""$Cp!=""$Pays!=""$Civil!=""$Email!="")){
     $connect= mysql_connect('localhost','client','31p71h49'); 
        mysql_select_db("phplogin");  
        mysql_query("INSERT INTO clients (Nom, Prenom,Date_de_naissance,Adresse,Ville,Cp,Pays,Civil,Email) VALUES('$nom', '$prenom','$date_de_naissance','$adresse','$ville','$cp','$pays','$civil','$email')");   
    	}
    
    ?>
    <form method="POST" action="nouveauxclient.php">
    <p>Nom</p>
    <input type="text" name="Nom"/>
    <p>Prénom</p>
    <input type="text" name="Prénom"/>
    <p>Date de naissance</p>
    <input type="text" name="Date_de_naissance"/>
    <p>Adresse</p>
    <input type="text" name="Adresse"/>
    <p>Ville</p>
    <input type="text" name="Ville"/>
    <p>Code Postal</p>
    <input type="text" name="Cp"/>
    <p>Pays</p>
    <input type="text" name="Pays"/>
    <p>Civil</p>
    <input type="text" name="Civil"/>
    <p>Email</p>
    <input type="text" name="Email"/><br/><br>
    <input type="submit" name="Validez" value="Valider"/>
    </form>
    Si c'est cela il y a une erreur et je ne voie pas le formulaire vocii l'erreur !

    (!) Parse error: syntax error, T_IS_NOT_EQUAL inattendu, attendait »,« ou »)« dans C: \ wamp \ www \ nouveauxclient.php en ligne 12
    1. Ok, il ne reste donc que les deux premières erreurs :

      1 - La fonction isset() sert à vérifier qu'une variable est définie et différente de null. On ne peut donc pas lui passer en argument des comparaisons entre variables.
      2 - Les différentes conditions exprimées dans un if doivent être séparées par des opérateurs logiques.

      Je t'aiguille un petit peu plus :

      isset() sert à vérifier qu'une variable est définie et non nulle. Elle doit donc te servir à vérifier si les les données de ton formulaire ont été transmises ou non.

      C'est donc avant de définir tes variables $nom, $prenom, etc. qu'il faut vérifier si les $_POST['nom'], $_POST['prenom'], etc. sont bien définis :

      ex :
       if (isset($_POST['nom']) && isset($_POST['prenom']) && $_POST['nom'] != "" && $_POST['prenom'] != "") { 
          $nom = $_POST['nom']; 
          $prenom = $_POST['prenom']; 
      }


      Tu remarqueras la présence dans la condition du if de l'opérateur && qui signifie "et", et qui oblige donc à ce que toutes les conditions soient remplies pour entrer dans les instructions du if.

      Je te laisse en déduire le reste... :)
    2. Peux tu me donner le code s'il te plait ou m'expliquer plus clairement je ne comprend pas !
    3. en gros sa
      <?php 
      if (isset($Nom!=""$Prenom!=""$Date_de_naissance!=""$Adresse!=""$Ville!=""$Cp!=""$Pays!=""$Civil!=""$Email!="")){ 
          $Nom = $_POST['Nom'];  
          $Prenom =$_POST['Prenom'];  
       $Date_de_naissance = $_POST['Date_de_naissance'];  
       $Adresse =$_POST['Adresse'];  
       $Ville = $_POST['Ville'];  
       $Cp= $_POST['Cp'];  
       $Pays = $_POST['Pays'];  
          $Civil = $_POST['Civil'];  
       $Email = $_POST['Email'];  
       $connect= mysql_connect('localhost','client','31p71h49');  
          mysql_select_db("phplogin");   
          mysql_query("INSERT INTO clients (Nom, Prenom,Date_de_naissance,Adresse,Ville,Cp,Pays,Civil,Email,)VALUES('$nom','$prenom','$date_de_naissance','$adresse','$ville','$cp','$pays','$civil','$email',)");    
       } 
      
      ?> 
      <form method="POST" action="nouveauxclient.php"> 
      <p>Nom</p> 
      <input type="text" name="Nom"/> 
      <p>Prénom</p> 
      <input type="text" name="Prénom"/> 
      <p>Date de naissance</p> 
      <input type="text" name="Date_de_naissance"/> 
      <p>Adresse</p> 
      <input type="text" name="Adresse"/> 
      <p>Ville</p> 
      <input type="text" name="Ville"/> 
      <p>Code Postal</p> 
      <input type="text" name="Cp"/> 
      <p>Pays</p> 
      <input type="text" name="Pays"/> 
      <p>Civil</p> 
      <input type="text" name="Civil"/> 
      <p>Email</p> 
      <input type="text" name="Email"/><br/><br> 
      <input type="submit" name="Validez" value="Valider"/> 
      </form>
    4. Je ne vois pas comment être plus clair :

      - isset($Nom!=""$Prenom) est une erreur. isset() sert à vérifier si UNE variable est définie.
      >> isset($Nom) && isset($Prenom) && $Nom != "" && $Prenom != ""

      - Ce n'est pas $Nom que tu dois vérifier, mais ce qui est passé par ton formulaire, donc $_POST['nom']

      - PS : tu as une virgule en trop dans ton insert après "email"
      - PS2 : $Nom et $nom sont deux variables différentes. Dans ton code actuel tu utilises une fois l'un, une fois l'autre.
  5. Merci flokocha toujours même problème mais voici le code !
    
    <?php
    
        $Nom = $_POST['Nom']; 
        $Prenom =$_POST['Prenom']; 
    	$Date_de_naissance = $_POST['Date_de_naissance']; 
    	$Adresse =$_POST['Adresse']; 
    	$Ville = $_POST['Ville']; 
    	$Cp= $_POST['Cp']; 
    	$Pays = $_POST['Pays']; 
        $Civil = $_POST['Civil']; 
    	$Email = $_POST['Email']; 
    	{
    if (isset($Nom!=""$Prenom!=""$Date_de_naissance!=""$Adresse!=""$Ville!=""$Cp!=""$Pays!=""$Civil!=""$Email!=""))
     $connect= mysql_connect('localhost','client','31p71h49'); 
        mysql_select_db("phplogin");  
        mysql_query("INSERT INTO (Nom, Prenom,Date_de_naissance,Adresse,Ville,Cp,Pays,Civil,Email) phplogin VALUES('$nom', '$prenom','$date_de_naissance','$adresse','$ville','$cp','$pays','$civil','$email')");   
    	}
    
    ?>
    <form method="POST" action="nouveauxclient.php">
    <p>Nom</p>
    <input type="text" name="Nom"/>
    <p>Prénom</p>
    <input type="text" name="Prénom"/>
    <p>Date de naissance</p>
    <input type="text" name="Date_de_naissance"/>
    <p>Adresse</p>
    <input type="text" name="Adresse"/>
    <p>Ville</p>
    <input type="text" name="Ville"/>
    <p>Code Postal</p>
    <input type="text" name="Cp"/>
    <p>Pays</p>
    <input type="text" name="Pays"/>
    <p>Civil</p>
    <input type="text" name="Civil"/>
    <p>Email</p>
    <input type="text" name="Email"/><br/><br>
    <input type="submit" name="Validez" value="Valider"/>
    </form>
    1. Normal : mêmes erreurs, même résultat !

      1 - La fonction isset() sert à vérifier qu'une variable est définie et différente de null. On ne peut donc pas lui passer en argument des comparaisons entre variables.
      2 - Les différentes conditions exprimées dans un if doivent être séparées par des opérateurs logiques.
      3 (réglé) - Toujours au sein de ce if, il y a 4 parenthèses fermantes pour seulement 2 ouvrantes...
      4 (réglé) - Au niveau de la requête d'insertion, il manque une virgule entre les noms des deux derniers champs.
      5 (réglé) - Il manque une parenthèse fermante après la définition des champs.
      6 (réglé) - "Nom" est annoncé comme le premier champ à remplir, tandis que plus loin la variable $nom n'est renseignée qu'en deuxième position.
      7 (réglé) - "phplogin" est annoncé comme le dernier champ à remplir, tandis que la dernière variable insérée est $email.
      8 (je l'avais loupé) - Les instructions du if doivent être encadrées par des accolades.

      Nouvelles erreurs :

      9 - L'accolade ouvrante du if ne peut pas être placée avant le if, mais après l'expression de sa condition.
      10 - Le nom de la table ciblée pour l'insertion doit être inscrit immédiatement après le INSERT INTO.
    2. Je ne sais pas ou metre le {
    3. if (conditions) {
      intructions
      }

      Mais intéresse-toi également aux deux premiers points, car c'est pour l'instant eux qui sont directement à l'origine de l'erreur que tu obtiens.
    4. donc if (isset($Nom!=""$Prenom!=""$Date_de_naissance!=""$Adresse!=""$Ville!=""$Cp!=""$Pays!=""$Civil!=""$Email!="")){
    5. Exactement (pour ce qui est de l'accolade seulement) !

      (PS : désolé de ne pas te donner directement les réponses, mais je pense te rendre davantage service en t'aidant à chercher par toi même et ainsi à comprendre un minimum ce que tu fais)
  6. En faisant ce que as dit tryan44 voici l'erreur

    (!) Parse error: syntax error, T_IS_NOT_EQUAL inattendu, attendait »,« ou »)« dans C: \ wamp \ www \ nouveauxclient.php en ligne 12
    et voici mon code
    <?php
    
        $Nom = $_POST['Nom']; 
        $Prenom =$_POST['Prenom']; 
    	$Date_de_naissance = $_POST['Date_de_naissance']; 
    	$Adresse =$_POST['Adresse']; 
    	$Ville = $_POST['Ville']; 
    	$Cp= $_POST['Cp']; 
    	$Pays = $_POST['Pays']; 
        $Civil = $_POST['Civil']; 
    	$Email = $_POST['Email']; 
    if (isset($Nom!=""$Prenom!=""$Date_de_naissance!=""$Adresse!="")$Ville!=""$Cp!="")$Pays!=""$Civil!="")$Email!="")
     $connect= mysql_connect('localhost','client','31p71h49'); 
        mysql_select_db("phplogin");  
        mysql_query("INSERT INTO (Nom, Prenom,Date_de_naissance,Adresse,Ville,Cp,Pays,Civil,Email phplogin VALUES('', '$nom', '$prenom','$date_de_naissance','$adresse','$ville','$cp','$pays','$civil','$email')");  
    	}
    
    ?>
    <form method="POST" action="nouveauxclient.php">
    <p>Nom</p>
    <input type="text" name="Nom"/>
    <p>Prénom</p>
    <input type="text" name="Prénom"/>
    <p>Date de naissance</p>
    <input type="text" name="Date_de_naissance"/>
    <p>Adresse</p>
    <input type="text" name="Adresse"/>
    <p>Ville</p>
    <input type="text" name="Ville"/>
    <p>Code Postal</p>
    <input type="text" name="Cp"/>
    <p>Pays</p>
    <input type="text" name="Pays"/>
    <p>Civil</p>
    <input type="text" name="Civil"/>
    <p>Email</p>
    <input type="text" name="Email"/><br/><br>
    <input type="submit" name="Validez" value="Valider"/>
    </form>
    1. Beaucoup d'erreurs dans cette portion de code :

      (isset($Nom!=""$Prenom!=""$Date_de_naissance!=""$Adresse!="")$Ville!=""$Cp!="")$Pays!=""$Civil!="")$Email!="")  
       $connect= mysql_connect('localhost','client','31p71h49');   
          mysql_select_db("phplogin");    
          mysql_query("INSERT INTO (Nom, Prenom,Date_de_naissance,Adresse,Ville,Cp,Pays,Civil,Email phplogin VALUES('', '$nom', '$prenom','$date_de_naissance','$adresse','$ville','$cp','$pays','$civil','$email')");  


      1 - La fonction isset() sert à vérifier qu'une variable est définie et différente de null. On ne peut donc pas lui passer en argument des comparaisons entre variables.
      2 - Les différentes conditions exprimées dans un if doivent être séparées par des opérateurs logiques.
      3 - Toujours au sein de ce if, il y a 4 parenthèses fermantes pour seulement 2 ouvrantes...
      4 - Au niveau de la requête d'insertion, il manque une virgule entre les noms des deux derniers champs.
      5 - Il manque une parenthèse fermante après la définition des champs.
      6 - "Nom" est annoncé comme le premier champ à remplir, tandis que plus loin la variable $nom n'est renseignée qu'en deuxième position.
      7 - "phplogin" est annoncé comme le dernier champ à remplir, tandis que la dernière variable insérée est $email.
      8 (je l'avais loupé) - Les instructions du if doivent être encadrées par des accolades.
  7. $_POST['Date_de_naissance'] doit impérativement retourner une valeur sous la forme AAAA-MM-JJ, sinon mysql râle.
    Par ailleurs, si vous utilisez une variable comme $Nom, vous devez utilisez la même variable dans votre requête et non tout en minuscule $nom.
    1. Il y a toujorus l'erreur a la ligne 9 date de naissance !
      1. sous quelle forme est la date ? JJ/MM/AAAA ou AAAA-MM-JJ ?
      2. dans la base de donéées c'est AAAA-MM-JJ
    2. up s'il vous plait !
      1. je met quoi dans if déjà ?
      2. par exemple un test si la variable $nom existe et est renseignée :
        if (isset($nom) && $nom!="") {
        ta requête
        }
      3. d'accord donc je renseigne rien dans if (isset($nom) && $nom!="ICI")
      4. oui car ici, il s'agit de tester si $nom existe et qu'elle ne soit pas égale à "" (càd rien)
    3. Voici le code
      <?php
      
          $Nom = $_POST['Nom']; 
          $Prenom =$_POST['Prenom]; 
      	$Date_de_naissance = $_POST['Date_de_naissance']; 
      	$Adresse =$_POST['Adresse']; 
      	$Ville = $_POST['Ville']; 
      	$Cp= $_POST['Cp']; 
      	$Pays = $_POST['Pays']; 
          $Civil = $_POST['Civil']; 
      	$Email = $_POST['Email']; 
      
          $connect= mysql_connect('localhost','client','31p71h49'); 
      
          mysql_select_db("phplogin");  
      	
          mysql_query("INSERT INTO phplogin VALUES('', '$nom', '$prenom','$date_de_naissance','$adresse','$ville','$cp','$pays','$civil','$email')");  
      ?>
      <form method="POST" action="nouveauxclient.php">
      <p>Nom</p>
      <input type="text" name="Nom"/>
      <p>Prénom</p>
      <input type="text" name="Prénom"/>
      <p>Date de naissance</p>
      <input type="text" name="Date_de_naissance"/>
      <p>Adresse</p>
      <input type="text" name="Adresse"/>
      <p>Ville</p>
      <input type="text" name="Ville"/>
      <p>Code Postal</p>
      <input type="text" name="Cp"/>
      <p>Pays</p>
      <input type="text" name="Pays"/>
      <p>Civil</p>
      <input type="text" name="Civil"/>
      <p>Email</p>
      <input type="text" name="Email"/><br/><br>
      <input type="submit" name="Validez" value="Valider"/>
      </form>
      1. vois ton fichier en trois parties : (de plus il manque les champs de ta base dans ta requete

        ------------1 les variables---------------------
        $nom = $_POST['Nom'];
        $prenom =$_POST['Prenom];
        $date_de_naissance = $_Post['Date_de_naissance'];
        etc...

        ------------2 la requete a exécuter si les champs ont été renseignés --------------
        if (blabla) {
        //la requete sql qui inscrit un nouveau client
        $connect= mysql_connect('localhost','client','31p71h49');

        mysql_select_db("phplogin");

        mysql_query("INSERT INTO (Nom, Prenom, etc...) phplogin VALUES('', '$nom', '$prenom','$date_de_naissance','$adresse','$ville','$cp','$pays','$civil','$email')");
        }

        ----------------3 le formulaire de saisi -------------------------
        le formulaire
    4. (!) SCREAM: suppression d'erreur ignoré pour
      (!) Parse error: syntax error, T_STRING inattendu, attendait ']' dans C: \ wamp \ www \ nouveauxclient.php en ligne 9

      Merci avec
      $nom = $_POST['Nom'];
      $prenom =$_POST['prenom];
      $date_de_naissance = $_Post['date_de_naissance']; cela marque l'erreur ci-dessous

      le code :
      <?php
      if (isset($nom)) {
      
          $connect= mysql_connect('localhost','client','31p71h49'); 
      
          mysql_select_db("phplogin");  
      	$nom = $_POST['Nom']; 
          $prenom =$_POST['prenom]; 
          $date_de_naissance = $_Post['date_de_naissance']; 
      	$adresse = $_POST['adresse']; 
      	$ville = $_POST['ville']; 
      	$cp= $_POST['cp']; 
      	$pays = $_POST['pays']; 
          $civil = $_POST['civil']; 
      	$email = $_POST['email']; 
      
      
          mysql_query("INSERT INTO phplogin VALUES('', '$nom', '$prenom','$date_de_naissance','$adresse','$ville','$cp','$pays','$civil','$email')");  
      
      }
      
      ?>
      <form method="POST" action="nouveauxclient.php">
      <p>Nom</p>
      <input type="text" name="Nom"/>
      <p>Prénom</p>
      <input type="text" name="Prénom"/>
      <p>Date de naissance</p>
      <input type="text" name="Date_de_naissance"/>
      <p>Adresse</p>
      <input type="text" name="Adresse"/>
      <p>Ville</p>
      <input type="text" name="Ville"/>
      <p>Code Postal</p>
      <input type="text" name="Cp"/>
      <p>Pays</p>
      <input type="text" name="Pays"/>
      <p>Civil</p>
      <input type="text" name="Civil"/>
      <p>Email</p>
      <input type="text" name="Email"/><br/><br>
      <input type="submit" name="Validez" value="Valider"/>
      </form>
      1. la ligne - est la date_de_naissance
      2. Il faut respecter la casse, c'est à dire les mauscules aussi ;-)
        date_de_naissance --> Date_de_naissance
      3. en fait les "name" de ton form doivent être écrits pareil que dans les $_Post, tu vois?
      4. En gros $Date_de_naissance =$_Post['Date_de_naissance'];
    5. POur l'autres $nom = $_POST['Nom']; Il y a une erreur Parse error: syntax error, unexpected '[' in C:\wamp\www\nouveauxclient.php on line 7
      et le formulaire ne s'affiche pas ! et le code est :

       
      <?php
      if (isset($nom)) {
      
          $connect= mysql_connect('localhost','client','31p71h49'); 
      
          mysql_select_db("phplogin");  
      	$nom = $_POST['Nom'];['prénom];['date_de_naissance'];['adresse']; ['ville']; ['cp']; ['pays']; ['civil']; ['email']; 
      	$nou=mysql_query("INSERT INTO clients VALUES('$nom','$prénom','$date_de_naissance','$adresse','$ville','$cp','$pays,'$civil','$email')");
      
      }
      
      ?>
      <form method="POST" action="nouveauxclient.php">
      <p>Nom</p>
      <input type="text" name="Nom"/>
      <p>Prénom</p>
      <input type="text" name="Prénom"/>
      <p>Date de naissance</p>
      <input type="text" name="Date_de_naissance"/>
      <p>Adresse</p>
      <input type="text" name="Adresse"/>
      <p>Ville</p>
      <input type="text" name="Ville"/>
      <p>Code Postal</p>
      <input type="text" name="Cp"/>
      <p>Pays</p>
      <input type="text" name="Pays"/>
      <p>Civil</p>
      <input type="text" name="Civil"/>
      <p>Email</p>
      <input type="text" name="Email"/><br/><br>
      <input type="submit" name="Validez" value="Valider"/>
      </form>
      1. $nom = $_POST['Nom'];
        $prenom =$_POST['prenom];
        $date_de_naissance = $_Post['date_de_naissance'];
        ainsi de suite et surtout pas d'accents
      2. Ok j'essaye ! je te dis sa
      3. Et sors tes variables avant le if :
        vois ton fichier en trois parties :

        ------------1 les variables---------------------
        $nom = $_POST['Nom'];
        $prenom =$_POST['prenom];
        $date_de_naissance = $_Post['date_de_naissance'];
        etc...

        ------------2 la requete a exécuter si les champs ont été renseignés --------------
        if () {
        la requete sql qui inscrit un nouveau client
        }

        ----------------3 le formulaire de saisi -------------------------
        le formulaire
    6. ton dernier code avec if il n'y as plus d'erreur mais les info ne vont pas dans la base de donnée voici le code :
      <?php
      if (isset($nom)) {
      
          $connect= mysql_connect('localhost','client','contact145623'); 
      
          mysql_select_db("phplogin");  
      
          mysql_query("INSERT INTO phplogin VALUES('', '$nom', '$prénom','$date_de_naissance','$adresse','$ville','$cp','$pays','$civil','$email')");  
      
      }
      
      ?>
      <form method="POST" action="nouveauxclient.php">
      <p>Nom</p>
      <input type="text" name="Nom"/>
      <p>Prénom</p>
      <input type="text" name="Prénom"/>
      <p>Date de naissance</p>
      <input type="text" name="Date_de_naissance"/>
      <p>Adresse</p>
      <input type="text" name="Adresse"/>
      <p>Ville</p>
      <input type="text" name="Ville"/>
      <p>Code Postal</p>
      <input type="text" name="Cp"/>
      <p>Pays</p>
      <input type="text" name="Pays"/>
      <p>Civil</p>
      <input type="text" name="Civil"/>
      <p>Email</p>
      <input type="text" name="Email"/><br/><br>
      <input type="submit" name="Validez" value="Valider"/>
      </form>


      Et j'essaye l'autres
      1. as-tu rempli toutes tes variables ?
        $nom = $_POST['Nom'];
        $prenom = $_POST['Prenom']; au fait, ne pas d'accents dans tes variables !!!
    7. Oui le vocii

      <?php 
      $connect= mysql_connect('localhost','client','contact145623'); 
      mysql_select_db("phplogin");  
      mysql_query("INSERT INTO phplogin VALUES('', '$nom', '$prénom', '$date_de_naissance','$adresse','$ville','$cp','$pays','$civil','$email')");  
      ?> 
      <form method="POST" action="nouveauxclient.php"> 
      <p>Nom</p> 
      <input type="text" name="Nom"/> 
      <p>Prénom</p> 
      <input type="text" name="Prénom"/> 
      <p>Date de naissance</p> 
      <input type="text" name="Date_de_naissance"/> 
      <p>Adresse</p> 
      <input type="text" name="Adresse"/> 
      <p>Ville</p> 
      <input type="text" name="Ville"/> 
      <p>Code Postal</p> 
      <input type="text" name="Cp"/> 
      <p>Pays</p> 
      <input type="text" name="Pays"/> 
      <p>Civil</p> 
      <input type="text" name="Civil"/> 
      <p>Email</p> 
      <input type="text" name="Email"/><br/><br> 
      <input type="submit" name="Validez" value="Valider"/> 
      </form> 
      
      1. ah ok !
        Il faut que pour chaque variable que tu récupères, lui assigner une valeur. Exemple :
        $nom = $_POST['Nom']; etc...

        fais le avant la requête. Bon courage
      2. Mais au fait, moi je séparerai les deux parties de ton code. Je ferai une page (exemple créerclient.php) et une page avec le formulaire (nouveauclient.php )
      3. ou alors tester si les champs sont vides et dans ce cas, ne pas faire d'insert :

        <?php
        if (isset($nom)) {
        $connect= mysql_connect('localhost','client','contact145623');
        mysql_select_db("phplogin");
        mysql_query("INSERT INTO phplogin VALUES('', '$nom',
        '$prénom','$date_de_naissance','$adresse','$ville','$cp','$pays','$civil','$email')");
        }
        ?>
    8. Merci beaucoup mais voila j'ai des erreurs !

      voila le screen

      http://img11.hostingpics.net/pics/172735screen1.png
      1. On peut voir le code du fichier nouveauxclient.php stp?
    9. Bonjour,

      il manque les champs de ta table :

      $nou=mysql_query("INSERT INTO clients (nom, prenom, etc...) VALUES('$nom','$prénom','$date_de_naissance','$adresse','$ville','$cp','$pays,'civil','email')");

      à adapter selon les noms de tes champs bien sûr ;-)