Formulaires

Bonjour,
J'ai de gros problèmes avec les formulaires php, pour le créer, tout va bien.
Le problème, c'est que je n'arrive pas à récupérer et retransmettre les données introduites par l'utilisateur en utilisant $_POST.

Pourriez-vous m'aider?
merci

3 réponses

  1. <html>
    <meta charset="utf-8"/>
    <h1>PHP avance-serie 1</h1><br/>
    <body>
    <form method="POST" action="cible.php">
    <p>
    Quel est votre prenom?
    <input type="text" name="prenom" value=" "/><br/>
    Quel est votre nom?
    <input type="text" name="nom" value=" "/><br/>
    Veuillez entrer ici un mot de passe
    <input type="password" name="mot de passe"/><br/>
    Veuillez confirmer votre mot de passe
    <input type="password" name="confirmez votre mot de passe"/><br/>
    Etes-vous un homme ou une femme?
    homme
    <input type="radio" name="homme" value="oui" id="oui1" checked="checked"/><label for="oui1">Oui</label>
    <input type="radio" name="homme" value="non" id="non1" /><label for="non1">Non</label><br/>
    femme
    <input type="radio" name="femme" value="oui" id="oui2" /><label for="oui2">Oui</label>
    <input type="radio" name="femme" value="non" id="non2"/><label for="non2">Non</label><br/>
    Quelle est votre activite favorite?
    <select name="Activite favorite"><br/>
    <option value=" ">----Votre choix-----</option><br/>
    <option value="choix1">Sorties culturelles</option>
    <option value="choix2">Informatique</option>
    <option value="choix3">Voyages</option>
    <option value="choix4">Politique</option>
    </select><br/>
    <h2>Voulez-vous recevoir notre newsletter?</h2><br>
    <input type="checkbox" name="newsletter" value="oui" id="oui" checked="checked"/><label for="oui">Oui</label>
    <input type="checkbox" name="newsletter" value="non" id="non"/><label for="non">Non</label><br/>
    <h2>Avez-vous des commentaires?</h2><br/>
    <textarea name="commentaires" rows="10" cols="50">
    Votre texte ici
    </textarea><br/>
    <input type="submit" value="envoyer"/>
    <input type="reset" value="annuler"/><br/>
    </p>
    </form>

    Voilà le formulaire, qui est bon, j'ai vérifié.

    Et voilà ce qui cloche ;

    <?php
    echo "Merci d'avoir rempli le formulaire. Voici les données introduites :";
    echo '<br/>';
    echo 'Votre prénom est : ';
    echo $_POST['firstName']; // méthode post utilisé dans le formulaire registration
    echo '<br/>';
    echo 'Votre nom est : ';
    echo $_POST['lastName'];
    echo'<br/>';
    echo 'Votre mot de passe 1 est : ';
    echo $_POST['password1'];
    echo '<br/>';
    echo 'Votre mot de passe 2 est : ';
    echo $_POST['password2'];
    echo '<br/>';
    echo 'Vous êtes de sexe : ';
    echo $_POST['gender'];
    echo '<br/>';
    echo $_POST['favoriteWidget'];
    echo '<br/>';
    echo 'Recevoir newsletter : ';
    echo $_POST['newsletter'];
    echo '<br/>';
    echo 'Vos commentaires : ';
    echo $_POST['comments'];
    echo '<br/>';

    ?>

    Merci pour vos réponses, je sais que c'est un peu long. Je vais voir avec les guillemets, mon prof me dit toujours qu'il faut mettre des apostrophes.
    1. Salut salut,

      Peux tu poster ton formulaire ça nous aidera ;)
      1. bonjour,

        <form method="post" action="mail.php">

        <h2>CONTACT</h2>

        <p>
        Votre Email <br />
        <input type="text" name="votremail" />

        <!-- Valeur par défaut de l'objet du mail -->
        <input type="hidden" name="objet" value="Vous avez un nouveau message" />
        </p>

        <p>
        Votre message <br />
        <textarea cols="50" rows="10" name="message"></textarea>
        </p>

        <p>
        <input type="submit" value="Envoyer" />
        </p>

        </form>
        <!-- On ferme la balise form, notre formulaire est fini -->

        <head>
        <?php
        // La variable $verif va nous permettre d'analyser si la sémantique de l'e-mail est bonne
        $verif="!^[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]{2,}\.[a-zA-Z]{2,4}$!";

        // On assigne et protège nos variables
        $votremail=$_POST["votremail"];
        $from=htmlspecialchars("From: ".$votremail."\r\n");
        $message=stripslashes(htmlspecialchars($_POST["message"]));

        // On met ici notre e-mail
        $destinataire="destinataire@hotmail.fr<script type="text/javascript">
        /* <![CDATA[ */
        (function(){try{var s,a,i,j,r,c,l,b=document.getElementsByTagName("script");l=b[b.length-1].previousSibling;a=l.getAttribute('data-cfemail');if(a){s='';r=parseInt(a.substr(0,2),16);for(j=2;a.length-j;j+=2){c=parseInt(a.substr(j,2),16)^r;s+=String.fromCharCode(c);}s=document.createTextNode(s);l.parentNode.replaceChild(s,l);}}catch(e){}})();
        /* ]]> */
        </script>";

        /* On place le sujet du message qui, ici, sera toujours le même
        puisque dans la partie Html, on l'a mis en caché grâce au type="hidden"<couleur nom="rouge"> <img src="../../bundles/tinymce/vendor/tiny_mce/plugins/emotions/img/clin.png" title=";)" alt=";)"> </couleur> avec comme valeur "Vous avez un nouveau message" */
        $objet=$_POST['objet'];

        // C'est bon : on est ok, vérifions si l'e-mail est valide, grâce à notre sympathique REGEX
        if(!preg_match($verif,$votremail))
        {
        echo "Votre e-mail n'est pas valide";
        }

        // On vérifie s'il y a un message
        elseif (trim($message)=="")
        {
        echo "Y'en a marre des messages vides !";
        }

        // Si tout est ok, on envoie l'e-mail
        else
        {
        mail($destinataire,$objet,$message,$from);
        echo "Message envoyé au webmaster";
        }

        ?>
        </head><br>

        Le Site du Zero