IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

recuperer les données d'un formulaire dans une table


Sujet :

PHP & Base de données

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 22
    Points : 15
    Points
    15
    Par défaut recuperer les données d'un formulaire dans une table
    j ai créer un formulaire et je veux recuperer les données entrées dans le formulaire dans une table "cordonner" que j' ai crée dans une base webgestion. quand je rentre les données je valide rien ne se produit.
    Voici mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
     
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
      <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
        <head>
           <title>Bienvenue sur mon site !</title>
           <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    	  <!-- La balise <link /> comporte plusieurs attributs. Vous pouvez en modifier deux d'entre eux pour le moment :
                        title : c'est le nom que vous donnez à votre feuille de style (mettez ce que vous voulez)
                         href : c'est l'emplacement où se trouve votre feuille de style sous forme de lien relatif. 
    		Dans cet exemple le CSS se trouve dans le même dossier, mais je vous recommande de le mettre dans un sous-dossier "styles/" par exemple.
                       -->
    	   <link rel="stylesheet" media="screen" type="text/css" title="Design" href="design.css" />
        </head>
        <body>
     
     
    	<?php
    if (isset($_POST['nom']) AND isset($_POST['prenom']) AND isset($_POST['Pseudo']) AND isset($_POST['email']) AND isset($_POST['Pass']) AND isset($_POST['rue'])AND isset($_POST['ville'])AND isset($_POST['postale'])) // Si les variables existent
    {
        if ($_POST['nom'] != NULL AND $_POST['prenom'] != NULL AND $_POST['Pseudo'] != NULL AND $_POST['email'] != NULL AND $_POST['Pass'] != NULL AND $_POST['rue'] != NULL AND $_POST['ville'] != NULL AND $_POST['postale'] != NULL ) // Si on a quelque chose à enregistrer
        {
            // D'abord, on se connecte à MySQL
            mysql_connect("localhost", "root", "");
            mysql_select_db("webgestion");
     
            // On utilise les fonctions PHP mysql_real_escape_string et htmlspecialchars pour la sécurité
            $nom = mysql_real_escape_string(htmlspecialchars($_POST['nom']));
            $prenom = mysql_real_escape_string(htmlspecialchars($_POST['prenom']));
    		$Pseudo = mysql_real_escape_string(htmlspecialchars($_POST['Pseudo']));
    		$email = mysql_real_escape_string(htmlspecialchars($_POST['email']));
    		$Pass = mysql_real_escape_string(htmlspecialchars($_POST['Pass']));
    		$rue = mysql_real_escape_string(htmlspecialchars($_POST['rue']));
    		$ville = mysql_real_escape_string(htmlspecialchars($_POST['ville']));
    		$postale = mysql_real_escape_string(htmlspecialchars($_POST['postale']));
     
     
            // Ensuite on enregistre le message
            mysql_query("INSERT INTO cordonner VALUES('','$nom', '$prenom',  '$Pseudo', '$email', '$Pass', '$rue', '$ville', '$postale')")or die(mysql_error());
     
            // On se déconnecte de MySQL
            mysql_close();
        }
    }
    ?>
    <!------------------------------------------------------------------ formulaire-------------------------------------------------------------------------------------->
    	<form method="post" action="page7.php">
     
       <fieldset>
           <legend>Vos coordonnées</legend> <!-- Titre du fieldset -->
     
           <label for="nom">Nom ?</label>
           <input type="text" name="nom" id="nom" tabindex="10" /><br />
     <br />
           <label for="prenom">Prénom ?</label>
           <input type="text" name="prenom" id="prenom" tabindex="20" /><br />
     <br />
      <label for="Pseudo">Pseudo ?</label>
           <input type="text" name="Pseudo" id="Pseudo" tabindex="20" /><br />
     <br />
           <label for="email">E-mail ?</label>
           <input type="text" name="email" id="email" tabindex="30" /><br />
    	   <br />
    	   <label for="Pass">Mot de passe ?</label>
           <input type="text" name="Pass" id="Pass" tabindex="30" /><br />
    	   <br />
       </fieldset>
     
       <fieldset>
           <legend>Votre Adresse</legend> <!-- Titre du fieldset -->
     
           <p>
     
    		   <label for="rue">N° et nom de la rue ?</label><br />
           <input type="text" name="rue" id="nom" tabindex="20" /><br />
     
    	   <label for="ville">ville ?</label><br />
           <input type="text" name="ville" id="ville" tabindex="20" /><br />
     
    	   <label for="postal">code postal?</label><br />
           <input type="text" name="postal" id="postal" tabindex="20" /><br />   
           </p>   
       </fieldset>
    </form>
      <p>
          <input type="submit" value="Envoyer" />
      </p>
    <!------------------------------------------------------------------fin formulaire-------------------------------------------------------------------------------------->
     
     
    <?php
     
    // Maintenant on doit récupérer les 10 dernières entrées de la table
    // On se connecte d'abord à MySQL :
     mysql_connect("localhost", "root", "");
            mysql_select_db("webgestion");
     
    // On utilise la requête suivante pour récupérer les 10 derniers messages :
    $reponse = mysql_query("SELECT * FROM cordonner ORDER BY ID DESC LIMIT 0,10");
     
    // On se déconnecte de MySQL
    mysql_close();
     
    // Puis on fait une boucle pour afficher tous les résultats qu'on veut :
    while ($donnees = mysql_fetch_array($reponse) )
    {
    ?>
    <p><strong><?php echo $donnees['nom']; ?></strong> : <?php echo $donnees['prenom']; ?></p>
    <?php
    }
    ?>
    	</body>
    	</html>

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Bonjour et bienvenu sur le forum.

    ton champ s'appelle "postal" alors que partout ailleurs tu as mis "postale".

    Pour l'avenir, pour debuguer un probleme de se type, il te suffisant de controler le deroulement de ton script en positionnant des echos.
    Tu aurais pu voir que tu ne passais pas la premiere condition.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 22
    Points : 15
    Points
    15
    Par défaut
    j ai rectifié l'erreur mais ça ne marche toujours pas.
    En plus j'ai pas compris ce que tu m'a expliquer pour le positionnement des echo

    voici le code


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
     
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
      <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
        <head>
           <title>Bienvenue sur mon site !</title>
           <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    	  <!-- La balise <link /> comporte plusieurs attributs. Vous pouvez en modifier deux d'entre eux pour le moment :
                        title : c'est le nom que vous donnez à votre feuille de style (mettez ce que vous voulez)
                         href : c'est l'emplacement où se trouve votre feuille de style sous forme de lien relatif. 
    		Dans cet exemple le CSS se trouve dans le même dossier, mais je vous recommande de le mettre dans un sous-dossier "styles/" par exemple.
                       -->
    	   <link rel="stylesheet" media="screen" type="text/css" title="Design" href="design.css" />
        </head>
        <body>
     
     
    	<?php
    if (isset($_POST['nom']) AND isset($_POST['prenom']) AND isset($_POST['Pseudo']) AND isset($_POST['email']) AND isset($_POST['Pass']) AND isset($_POST['rue'])AND isset($_POST['ville'])AND isset($_POST['postale'])) // Si les variables existent
    {
        if ($_POST['nom'] != NULL AND $_POST['prenom'] != NULL AND $_POST['Pseudo'] != NULL AND $_POST['email'] != NULL AND $_POST['Pass'] != NULL AND $_POST['rue'] != NULL AND $_POST['ville'] != NULL AND $_POST['postale'] != NULL ) // Si on a quelque chose à enregistrer
        {
            // D'abord, on se connecte à MySQL
            mysql_connect("localhost", "root", "");
            mysql_select_db("webgestion");
     
            // On utilise les fonctions PHP mysql_real_escape_string et htmlspecialchars pour la sécurité
            $nom = mysql_real_escape_string(htmlspecialchars($_POST['nom']));
            $prenom = mysql_real_escape_string(htmlspecialchars($_POST['prenom']));
    		$Pseudo = mysql_real_escape_string(htmlspecialchars($_POST['Pseudo']));
    		$email = mysql_real_escape_string(htmlspecialchars($_POST['email']));
    		$Pass = mysql_real_escape_string(htmlspecialchars($_POST['Pass']));
    		$rue = mysql_real_escape_string(htmlspecialchars($_POST['rue']));
    		$ville = mysql_real_escape_string(htmlspecialchars($_POST['ville']));
    		$postale = mysql_real_escape_string(htmlspecialchars($_POST['postale']));
     
     
            // Ensuite on enregistre le message
            mysql_query("INSERT INTO cordonner VALUES('','$nom', '$prenom',  '$Pseudo', '$email', '$Pass', '$rue', '$ville', '$postale')")or die(mysql_error());
     
            // On se déconnecte de MySQL
            mysql_close();
        }
    }
    ?>
    <!------------------------------------------------------------------ formulaire-------------------------------------------------------------------------------------->
    	<form method="post" action="page7.php">
     
       <fieldset>
           <legend>Vos coordonnées</legend> <!-- Titre du fieldset -->
     
           <label for="nom">Nom ?</label>
           <input type="text" name="nom" id="nom" tabindex="10" /><br />
     <br />
           <label for="prenom">Prénom ?</label>
           <input type="text" name="prenom" id="prenom" tabindex="20" /><br />
     <br />
      <label for="Pseudo">Pseudo ?</label>
           <input type="text" name="Pseudo" id="Pseudo" tabindex="20" /><br />
     <br />
           <label for="email">E-mail ?</label>
           <input type="text" name="email" id="email" tabindex="30" /><br />
    	   <br />
    	   <label for="Pass">Mot de passe ?</label>
           <input type="text" name="Pass" id="Pass" tabindex="30" /><br />
    	   <br />
       </fieldset>
     
       <fieldset>
           <legend>Votre Adresse</legend> <!-- Titre du fieldset -->
     
           <p>
     
    		   <label for="rue">N° et nom de la rue ?</label><br />
           <input type="text" name="rue" id="nom" tabindex="20" /><br />
     
    	   <label for="ville">ville ?</label><br />
           <input type="text" name="ville" id="ville" tabindex="20" /><br />
     
    	   <label for="postale">code postal?</label><br />
           <input type="text" name="postale" id="postale" tabindex="20" /><br />   
           </p>   
       </fieldset>
    </form>
      <p>
          <input type="submit" value="Envoyer" />
      </p>
    <!------------------------------------------------------------------fin formulaire-------------------------------------------------------------------------------------->
     
     
    <?php
     
    // Maintenant on doit récupérer les 10 dernières entrées de la table
    // On se connecte d'abord à MySQL :
     mysql_connect("localhost", "root", "");
            mysql_select_db("webgestion");
     
    // On utilise la requête suivante pour récupérer les 10 derniers messages :
    $reponse = mysql_query("SELECT * FROM cordonner ORDER BY ID DESC LIMIT 0,10");
     
    // On se déconnecte de MySQL
    mysql_close();
     
    // Puis on fait une boucle pour afficher tous les résultats qu'on veut :
    while ($donnees = mysql_fetch_array($reponse) )
    {
    ?>
    <p><strong><?php echo $donnees['nom']; ?></strong> : <?php echo $donnees['prenom']; ?></p>
    <?php
    }
    ?>
    	</body>
    	</html>

  4. #4
    Membre confirmé Avatar de LeGilou
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    488
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 488
    Points : 531
    Points
    531
    Par défaut
    Bonjour,

    D'abbord, un champ text qui n'est pas resnseigné de retourne pas une valeur POST Null, mais un champ vide.
    Tu devrais donc utiliser :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    empty($_POST['nom']) AND empty($_POST['prenom']) ...
    Attention aussi aux majuscules/minuscules. ton champ "pseudo" est le seul avec une majuscule. C'est normal ?

    Enfin, comme le disait sabotage, après la première condition, tu ajoutes
    et après la 2ème :
    Comme ça, tu verras ou le script passe.

    Gillou

Discussions similaires

  1. Récupérer les données d'un formulaire dans une servlet
    Par Rinel dans le forum Servlets/JSP
    Réponses: 7
    Dernier message: 27/12/2014, 11h49
  2. Réponses: 2
    Dernier message: 18/05/2010, 11h31
  3. Réponses: 4
    Dernier message: 22/11/2009, 21h10
  4. Réponses: 4
    Dernier message: 06/05/2008, 19h59
  5. Comment recuperer les info d'un formulaire dans une boite de dialogue
    Par frutix dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 31/05/2006, 11h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo