Forumlaire+telechargement

mavounet -  
Ssylvainsab Messages postés 2892 Statut Modérateur -
Bonjour.
j'aimerai savoir si il existe un formulaire tres simple. je m'explique.
Si une personne clique sur la page telechargement, je voudrai qu'apparaissent un formulaire ou il y aura deux champs : prenom et mail, qui une fois remplie me seront envoyé par mail. une fois ces deux champs remplis, tout ceci redirige vers une page telechargement.
biensur une fois rempli, pas besoin de les re-remplir a chaque fois.

qqun sait commen faire?

merci bcp !!!!

18 réponses

  1. Ssylvainsab Messages postés 2892 Statut Modérateur 825
     
    Salut.

    Je pense que ceci te conviendra (tu peux l'adapter en modifiant les champs) :
    webmaster un formulaire de contact pour votre site

    une fois ces deux champ remplis, tout ceci redirige vers une page telechargement.
    La c'est simple, il suffit d'afficher le lien vers la page si les deux champs sont remplis.
    Tu peux aussi faire un header, mais il faut le mettre au début du code.

    une fois rempli, pas besoin de les re-remplir a chaque fois.
    Pour ca, il faut utiliser les sessions.
    0
    1. mavounet
       
      je t'avoue que j'ai beaucoup de mal avec le langage, je debute juste, pourrais tu m'aider encore plus ? enfin si tu veu, merci c deja sympas la !
      0
  2. mavounet
     
    re-bonjour, j'ai fait le script, apparement ca march, maintenant j'aimerai rediriger vers une autre page HTML quand on clique sur envoyer, comment pourrait on faire ?
    en tout cas merci pr votre aide !
    0
  3. Ssylvainsab Messages postés 2892 Statut Modérateur 825
     
    Pour rediriger vers une page, tu as plusieurs solutions.
    Voir :
    webmaster faire une redirection

    Dans ton cas, je te conseille un header php (mais si tu as des problèmes pour le mettre en place, donne ton code).
    0
    1. mavounet
       
      effecitvement j'ai un peu de mal, voici le code :

      <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN" "http://www.w3.org/TR/html4/strict.dtd">
      <html lang="fr">
      <head>
      <title>Contact</title>
      <style type="text/css">
      body{background:gray;color:white;}
      form{border:2px solid red;width:70%;padding:1em}
      p#msg,p#adr{border:2px solid green;margin-right:10%;padding:10px}
      p#msg textarea{border:2px solid blue;height:30em;width:80%}
      p#adr input{border:2px solid blue}
      p#bt{text-align:center}
      p#bt input{border:1px red solid;width:50%}
      </style>
      <meta http-equiv="content-type" content="Content-type:text/html;charset=iso-8859-1">
      </head>
      <body style="direction: ltr;">
      <h1>Pour telecharger</h1>
      <?php
      if (isset($_POST['message']))
      {
      // La variable $verif va nous permettre d'analyser si la sémantique de l'email est bonne
      $verif="#^[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]{1,}\.[a-zA-Z]{2,4}$#";

      $_POST['message'] = preg_replace("#(<|>)#", '-', $_POST['message']);
      $_POST['message'] = preg_replace('#"#', "'", $_POST['message']);
      $_POST['message'] = preg_replace('#&#', 'et', $_POST['message']);

      // On assigne et/ou protège nos variables
      $votremail=htmlspecialchars($_POST['votremail']);
      $message=stripslashes(htmlspecialchars($_POST['message']));

      $test_mail_vide=trim($votremail);
      $test_msg_vide=trim($message);
      $apercu_resultat='<p>Aperçu du résultat :</p>';

      /*On vérifie si l'e mail et le message sont pleins, et on agit en fonction.
      (on affiche Apercu du resultat, tel ou tel champ est vide, etc...*/
      //Si ca ne vas pas (mal rempli, mail non valide...)
      if ((empty($test_msg_vide)) or (!preg_match($verif,$votremail)))
      {
      if ((empty($test_mail_vide)) AND (empty($test_msg_vide)))
      {
      echo '<p>Tous les champs sont vides.</p>';
      $message='';
      $votremail='';
      $apercu_resultat='';
      }
      else
      {
      if (empty($test_mail_vide))
      {
      echo '<p>Vous n\'avez pas donné votre adresse e-mail.</p>';
      $votremail='';
      }
      elseif (!preg_match($verif,$votremail))
      {
      echo '<p>Votre adresse e-mail n\'est pas valide.</p>';
      }
      if (empty($test_msg_vide))
      {
      echo '<p>Votre message est vide.</p>';
      $apercu_resultat='';
      $message='';
      }
      }
      }
      //Si les deux sont pleins et que l'adresse est valide, on envoie on on prévisualise sans envoi
      else
      {

      $previsualiser=htmlspecialchars($_POST['previsualiser']);
      if (!empty($previsualiser))
      {
      $apercu_resultat='<p>Votre message et votre adresse e-mail sont valides et prêts a être envoyés.
      <br />Vous n\'avez plus qu\'à cliquer sur le bouton "Envoyer".<br />Prévisualisation :</p>';
      }
      else
      {
      $objet='Message du site';
      $from='From : '.$votremail;
      $destinataire='assaouloff@wanadoo.fr';
      mail($destinataire,$objet,$message,$from);
      echo '<p>Votre message a bien été envoyé. Merci.</p><p><a href="/">Retour à la page d\'accueil</a></p>';
      }
      }
      echo $apercu_resultat;
      }
      else
      {
      echo '<p>Vous pouvez utiliser ce formulaire :</p>';
      $votremail='';
      $message='';
      }
      ?>
      <form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
      <p id="adr"><label for="mail">Votre Adresse E-mail<br />
      <input name="votremail" tabindex="1" size="30" type="text" id="mail" value="<?php echo $votremail; ?>" /></label></p>

      <p id="msg"><label for="message">Votre message<br />
      <textarea tabindex="2" rows="20" cols="120" name="message" id="message"><?php echo $message; ?></textarea>
      </label></p>

      <p id="apercu"><label for="previsualiser">
      <input type="checkbox" name="previsualiser" tabindex="3" id="previsualiser" />
      Voir le résultat du message sans l'envoyer.</label></p>
      <p id="bt"><input tabindex="4" value="Envoyer" type="submit" /></p>

      </form>
      </body>
      </html>
      0
  4. Ssylvainsab Messages postés 2892 Statut Modérateur 825
     
    Mais tu as recopié le code de l'astuce que je t'ai donné, sans changement.
    Tu ne sais pas le faire un tout petit peu ?

    +met ton code entre les balises code la prochaine fois.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Ssylvainsab Messages postés 2892 Statut Modérateur 825
     
    C'est bon, j'ai fini de coder ta page.
    Il me faut l'adresse de la page vers laquelle il faut rediriger .
    0
    1. mavounet
       
      elle va s'appeler telechargements.htm.
      Aurelle
      0
  7. Ssylvainsab Messages postés 2892 Statut Modérateur 825
     
    euh......
    oui mais quelle est l'adresse ?
    elle sera dans le même dossier que l'autre fichier ?
    0
  8. mavounet
     
    je mettrai dans le dossier fichiers
    0
  9. Ssylvainsab Messages postés 2892 Statut Modérateur 825
     
    Mais donne moi l'adresse complète, le chemin ou est la page "telechargements.htm", le fichier que je vais faire, les répertoires, etc etc...

    Comment tu veux que je fasse sans ?
    0
  10. mavounet
     
    okle site total s'appelera : http://mavounet.free.fr/telechargements

    nom du fichier du formulaire : formulaire.html

    et le nom du fichier de telechargement : telechargement.html

    merci

    aurelle
    0
  11. Ssylvainsab Messages postés 2892 Statut Modérateur 825
     
    Ca y est, j'ai fini.
    Tu dois mettre le formulaire et le fichier telechargements.html dans le même dossier (n'importe lequel).
    Tu peux apeller le formulaire comme tu veux, du moment qu'il a l'extension .php
    Attention, l'autre fichier doit s'apeller exactement telechargements.html.

    Le code est à récupérer ici :
    http://ssylvainsab.free.fr/autres/ccmsdz/form/index.txt

    Bien sur, il ne faut pas le copier/coller dans ton éditeur, utilises le bloc notes.
    0
  12. mavounet
     
    J'ai fait ce que tu m'a dis mais j'ai deux problemes.

    Le 1er : quiand je remplie tous les champs, ca ne m'envoie pas de mail .

    et une fois tout fait, ca ne me redirige pas sur ; telechargements.html, mais ca reste sur la meme page.

    comment ca se fait ?

    merci bcp sylvain !

    aurelle
    0
  13. Ssylvainsab Messages postés 2892 Statut Modérateur 825
     
    "Quand je remplie tous les champs, ca ne m'envoie pas de mail"
    Ah ?
    C'est bizzare.

    Ton adresse est bien :
    assaouloff at wanadoo.fr
    en remplacant " at " par "@" bien sur.

    Est-ce que quand tu as rempli les champs tu vois :
    Le mail a bien été envoyé. Vous pouvez maintenant accéder à la page des téléchargements :


    et une fois tout fait, ca ne me redirige pas sur ; telechargements.html
    Exact.
    C'est parce que c'est un peu plus difficile à faire (mais je vais le faire).
    Normalement, il y a aussi un lien vers la page des téléchargements quand on a bien rempli les deux champs.

    Bon, je fais ca ;-)
    0
  14. Ssylvainsab Messages postés 2892 Statut Modérateur 825
     
    C'est bon, j'ai refait le formulaire.

    J'ai essayé, est-ce que tu as recu 2 mails ?

    Pour la redirection, la première fois elle se fait avec une meta ;-)

    a plus
    0
  15. mavounet
     
    yes j'ai recu deux mails ! t ADORABLE !

    je fais comment du coup ?

    merci !

    aurelle !
    0
  16. Ssylvainsab Messages postés 2892 Statut Modérateur 825
     
    je fais comment du coup ?
    Comme j'ai dit, tu n'as plus qu'a copier/coller le fichier http://ssylvainsab.free.fr/autres/ccmsdz/form/index.txt et l'enregistrer avec l'extension .php ;-)

    Sinon, comme c'est facile d'accéder a la page telechargements.html une fois qu'on connait l'adresse (qui n'est pas très difficile à deviner :D), je peux faire un script qui "cache" l'adresse de la page.

    Mais bon, je ferais ca demain (si tu veux).

    a plus
    0
  17. mavounet
     
    CA MARCHE ! lol
    le seul probleme c'est que ca ne m'envoie toujours pas les mails....erf

    merci encore !
    biz
    0
  18. mavounet
     
    coucou sylvain ,je voulais savoir si tu as pu voi un peu le fichier ?merci

    biz

    aurelle
    0
  19. Ssylvainsab Messages postés 2892 Statut Modérateur 825
     
    Bonsoir.
    Non, désolé je n'ai pas eu le temps.

    Pour la fonction mail qui ne marche pas, ça vient peut-être:
    -De ton hébergeur
    -De l'adresse a laquelle le mail est envoyé
    Tu peux me donner ces deux renseignements ?

    Sinon, voici une astuce pour envoyer un mail sans utiliser la fonction mail.
    https://openclassrooms.com/forum/sujet/vos-fonctions-ou-astuces-liste-89535#r254872

    Je le mettrais en place si ça ne fonctionne toujours pas ;-)

    a plus
    0