Annonce

Réduire
Aucune annonce.

Besoin d'un script :)

Réduire
X
 
  • Filtre
  • Heure
  • Afficher
Tout nettoyer
nouveaux messages

    Je vois l'endroit <legend>Vos coordonn�es</legend> remplace par <legend>Vos coordonn&eacute;es</legend>

    @MrBean : Mon premier code partait de ce principe mais ça date un peu, ça me fait penser que je vais pas tarder à le mettre à jour
    Zapier un joueur, un ami 26/05/2014

    Commentaire


      Zap : Alors c'est seulement un formulaire pour envoyer les coordonnées, pas de message ?


      edit : En tout cas, je peux te coder quelque chose de beaucoup plus simple que ce que l'on voit ci-dessus.
      edit2: Je regarde ça après le déjeuner, on m'appelle. ^^
      Dernière modification par MrBean, 31 août 2009, 17h20.
      http://backloggery.com/images/smileys/gentlemen.gif

      Commentaire


        Envoyé par MrBean Voir le message
        edit : En tout cas, je peux te coder quelque chose de beaucoup plus simple que ce que l'on voit ci-dessus.
        edit2: Je regarde ça après le déjeuner, on m'appelle. ^^
        Oui, au départ c'était pour la mail. Mais ça c'est transformé en récupérateur de contact.

        En gros, ceux qui veulent être au courant de nos promotions avant les autres, s'inscrivent par ce procédé.

        Du coup il faut juste le Nom et le Mail. Mais il doit être indiqué que le message à bien été transmit.

        Grand merci

        Commentaire


          bon

          Tu as mail.php, les trois premières lignes sont à éditer :

          Code PHP:
          <?php

          $destinataire 
          '[email protected]';
          $confirmation_sujet "Bienvenue"
          $confirmation_msg "Votre e-mail a bien ete enregistre, merci...";

          function 
          IsEmail($email) {
             
          $pattern "^([a-z0-9_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.)+[a-z]{2,7}$";
             return (
          eregi($pattern,$email)) ? true false;
          }

          function 
          SendMailContact($cible,$name,$email) {
             if(
          get_magic_quotes_gpc() == FALSEstripslashes($name);
             if(!
          isEmail($email)) {
                return 
          'Adresse electronique invalide';
             }
             else {
                
          $data $name.' : '.$email;
                if(
          mail($cible$data$data)) {
                   
          mail($email,$confirmation_sujet,$confirmation_msg);
                   return 
          $data.'<br />Message envoye.';
                }
                else {
                    return 
          'Le message n\'a pas ete envoye correctement.';
                }
             }
          }

          if(
          $_POST) echo SendMailContact($destinataire,$_POST['name'],$POST['email']);
          ?>
          Ensuite ta page contact (.php) :
          Faut ajouter le style css, je t'ai mis en évidence la ligne de code pour l'importer dans un fichier.css à part :

          Code HTML:
          <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
          <HTML>
          <HEAD>
          <TITLE>Contact</TITLE>
          
          <LINK rel="stylesheet" type="text/css" href="style.css"> 
          
          </HEAD>
          <body>
          
          <?php require_once('mail.php'); //ici, j'inclus mail.php ?> 
          
          <form id="contact" method="post">
          <fieldset><legend>Vos coordonnées</legend>
          <p>
          <label for="nom">Nom :</label>
          <input type="text" id="name" name="name" value="" tabindex="1" />
          </p>
          <p>
          <label for="email">Email :</label>
          <input type="text" id="email" name="email" value="" tabindex="2" />
          </p>
          </fieldset>
          <div style="text-align:center;"><input type="submit" name="envoi" value="Envoyer" /></div>
          </form>
          </body>
          </html>
          J'ai testé et le mail est rentré sous gmail, hotmail et fai...
          EDIT: oups un peu à l'arache, la confirmation se fait dans la page, mais tu voulais par mail aussi, j'édite le code...
          EDIT2: Bon voilà, il recoit un mail de confirmation.
          EDIT3: Je t'ai mis tout dans le meme fichier, si t'aimes mieux ça qu'avoir une division css/html/php comme les grands. ^^ http://stravinski.net/contactphp.txt
          Dernière modification par MrBean, 02 septembre 2009, 03h58.
          http://backloggery.com/images/smileys/gentlemen.gif

          Commentaire


            Envoyé par Zapier Voir le message
            En fait, je suis bien embêté avec ça, car je dois mettre en page la bestiole et dès que je touche à quelques chose, la procédure d'envois ne fonction plus
            C'est exactement pour ça que dans mon code j'ai bien séparé la partie PHP (traitement de l'envoi du mail) de la partie HTML (structure de la page). Si tu veux mettre en page, tu n'as rien à modifier dans mon code. Tu dois uniquement toucher au fichier style.css que tu mets à côté du fichier PHP contenant mon code.

            Si ça ne fonctionnait pas chez toi c'est tout simplement parce que tu as fait un mauvais copier/coller: comme l'a dit Kobras, il ne doit y avoir AUCUN caractère avant le début de mon code. Attention au Notepad de Windows qui met parfois une entête BOM invisible au début des fichiers.
            http://dinofly.planetemu.net/images/president_planet_2012.png
            http://forums.planetemu.net/picture.php?albumid=17&pictureid=198

            Commentaire


              Si tu veux tu en as une démo ici:
              http://dinofly.planetemu.net/images/president_planet_2012.png
              http://forums.planetemu.net/picture.php?albumid=17&pictureid=198

              Commentaire


                Envoyé par MrBean Voir le message
                bon


                J'ai testé et le mail est rentré sous gmail, hotmail et fai...
                EDIT: oups un peu à l'arache, la confirmation se fait dans la page, mais tu voulais par mail aussi, j'édite le code...
                EDIT2: Bon voilà, il recoit un mail de confirmation.
                EDIT3: Je t'ai mis tout dans le meme fichier, si t'aimes mieux ça qu'avoir une division css/html/php comme les grands. ^^ http://stravinski.net/contactphp.txt
                J'ai crée ces deux pages, mis en ligne, mais j'ai un code erreur de mon coté:

                Parse error: syntax error, unexpected T_RETURN in /var/www/vhosts/cki-informatique.com/httpdocs/mail.php on line 21



                Envoyé par Dinofly Voir le message
                Si ça ne fonctionnait pas chez toi c'est tout simplement parce que tu as fait un mauvais copier/coller: comme l'a dit Kobras, il ne doit y avoir AUCUN caractère avant le début de mon code. Attention au Notepad de Windows qui met parfois une entête BOM invisible au début des fichiers.
                je vais regarder.
                Dernière modification par Zapier, 01 septembre 2009, 08h54.

                Commentaire


                  Double poste mais ça concerne la modif de kobras.

                  Ça fonctionne bien maintenant avec ta modif:


                  En ce qui concerne ce script, si j'enlève la partie "Votre message" la procédure" à l'aire de bien fonctionner, mais même si il est indiqué que c'est envoyé, je ne reçois plus le message.

                  J'ai supprimé ces lignes la (en rouge):
                  $nom = (isset($_POST['nom'])) ? Rec($_POST['nom']) : '';
                  $email = (isset($_POST['email'])) ? Rec($_POST['email']) : '';
                  $objet = (isset($_POST['objet'])) ? Rec($_POST['objet']) : '';
                  $message = (isset($_POST['message'])) ? Rec($_POST['message']) : '';
                  if (($nom != '') && ($email != '') && ($objet != '') && ($message != ''))
                  et
                  // afficher le formulaire
                  echo '<form id="contact" method="post" action="'.$form_action.'">'."\n";
                  echo ' <fieldset><legend>Vos coordonnées</legend>'."\n";
                  echo ' <p>'."\n";
                  echo ' <label for="nom">Nom :</label>'."\n";
                  echo ' <input type="text" id="nom" name="nom" value="'.stripslashes($nom).'" tabindex="1" />'."\n";
                  echo ' </p>'."\n";
                  echo ' <p>'."\n";
                  echo ' <label for="email">Email :</label>'."\n";
                  echo ' <input type="text" id="email" name="email" value="'.stripslashes($email).'" tabindex="2" />'."\n";
                  echo ' </p>'."\n";
                  echo ' </fieldset>'."\n";

                  echo ' <fieldset><legend>Votre message :</legend>'."\n";
                  echo ' <p>'."\n";
                  echo ' <label for="objet">Objet :</label>'."\n";
                  echo ' <input type="text" id="objet" name="objet" value="'.stripslashes($objet).'" tabindex="3" />'."\n";
                  echo ' </p>'."\n";
                  echo ' <p>'."\n";
                  echo ' <label for="message">Message :</label>'."\n";
                  echo ' <textarea id="message" name="message" tabindex="4" cols="30" rows="8">'.stripslashes($message).'</textarea>'."\n";
                  echo ' </p>'."\n";
                  echo ' </fieldset>'."\n";
                  J'ai remis le script complet en attendant.

                  Kobras, peux tu regarder où je me plante?

                  Commentaire


                    En fait si c'est plus pour envoyer des mails mais juste pour récupérer des adresses mail de contact, il n'est plus nécessaire d'effectuer un envoie de mail mais juste de remplir une base de donnée avec les mail récupérer et donc pour le coup le code change alors pas mal.
                    http://forums.planetemu.net/picture.php?albumid=17&pictureid=206
                    http://zapier.planetemu.net/planetars/2013/bannieres-2013/kobras-planetars2013-bannieres.gif

                    Commentaire


                      Effectivement oui, mais je me batte avec mes armes qui dans ce cas n'est qu'un petit battons

                      C'est bon sinon, j'ai réussi avec un peut d'aide, voici le script pour qui cela pourrai aider:

                      <?php

                      $destinataire = '[email protected]';
                      $objet="Inscription Promo";

                      // copie ? (envoie une copie au visiteur)
                      $copie = 'non';

                      $form_action = '';

                      // Messages de confirmation du mail
                      $message_envoye = "Votre message nous est bien parvenu !";
                      $message_non_envoye = "L'envoi du mail a échoué, veuillez réessayer SVP.";

                      // Message d'erreur du formulaire
                      $message_formulaire_invalide = "Vérifiez que tous les champs soient bien remplis et que l'email soit sans erreur.";


                      function Rec($text)
                      {
                      $text = trim($text); // delete white spaces after & before text
                      if (1 === get_magic_quotes_gpc())
                      {
                      $stripslashes = create_function('$txt', 'return stripslashes($txt);');
                      }
                      else
                      {
                      $stripslashes = create_function('$txt', 'return $txt;');
                      }


                      $text = $stripslashes($text);
                      $text = htmlspecialchars($text, ENT_QUOTES); // converts to string with " and ' as well
                      $text = nl2br($text);
                      return $text;
                      };


                      function IsEmail($email)
                      {
                      $pattern = "^([a-z0-9_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.)+[a-z]{2,7}$";
                      return (eregi($pattern,$email)) ? true : false;
                      };

                      $err_formulaire = false;

                      $nom = (isset($_POST['nom'])) ? Rec($_POST['nom']) : '';
                      $email = (isset($_POST['email'])) ? Rec($_POST['email']) : '';

                      if (isset($_POST['envoi']))
                      {

                      $email = (IsEmail($email)) ? $email : '';
                      $err_formulaire = (IsEmail($email)) ? false : true;

                      if (($nom != '') && ($email != ''))
                      {

                      $headers = 'From: '.$nom.' <'.$email.'>' . "\r\n";


                      if ($copie == 'oui')
                      {
                      $cible = $destinataire.','.$email;
                      }
                      else
                      {
                      $cible = $destinataire;
                      };


                      $message = html_entity_decode($message);
                      $message = str_replace(''',"'",$message);
                      $message = str_replace('’',"'",$message);
                      $message = str_replace('<br>','',$message);
                      $message = str_replace('<br />','',$message);
                      $message = "Nom: ".$nom." Email: ".$email;


                      if (mail($cible, $objet, $message, $headers))
                      {
                      echo '<p>'.$message_envoye.'</p>'."\n";
                      }
                      else
                      {
                      echo '<p>'.$message_non_envoye.'</p>'."\n";
                      };
                      }
                      else
                      {

                      echo '<p>'.$message_formulaire_invalide.' <a href="contactpromo.php">Retour au formulaire</a></p>'."\n";
                      $err_formulaire = true;
                      };
                      }; // fin du if (!isset($_POST['envoi']))

                      if (($err_formulaire) || (!isset($_POST['envoi'])))
                      {
                      ?>
                      <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
                      <HTML>
                      <HEAD>
                      <TITLE> Contact </TITLE>
                      <META NAME="Generator" CONTENT="EditPlus">
                      <META NAME="Author" CONTENT="">
                      <META NAME="Keywords" CONTENT="">
                      <META NAME="Description" CONTENT="">
                      <style>
                      #contact {
                      width: 500px;
                      padding: 5px;
                      font-family:Helvetica, Arial, sans-serif;
                      font-size:12px;
                      }

                      #contact p {
                      margin-bottom: 5px;
                      }

                      #contact label {
                      float: left;
                      width: 100px;
                      }

                      #contact input, #contact textarea, #contact select {
                      border: 1px solid #cac9b9;
                      }

                      #contact .red {
                      border: 1px solid red;
                      }

                      #contact label.red {
                      border: none;
                      color: red;
                      }

                      #contact .customRed {
                      border: none;
                      color: red;
                      }

                      #contact #submit {
                      margin-left: 100px;
                      }

                      #validationMessage {
                      padding: 5px;
                      /*background-color: #eee;*/
                      border: 1px solid red;
                      margin-bottom: 10px;
                      color: red;
                      font-weight: bold;
                      display: none;
                      }

                      #contact .erreurMessage {
                      color: red;
                      margin-left: 10px;
                      font-size: 0.8em;
                      }
                      </style>
                      </HEAD>
                      <body>
                      <img src="http://www.cki-informatique.com/logocki.jpg" />
                      <p>Inscrivez vous pour recevoir nos promotions.
                      <?php

                      // afficher le formulaire
                      echo '<form id="contact" method="post" action="'.$form_action.'">'."\n";
                      echo ' <fieldset><legend>Vos coordonnées</legend>'."\n";
                      echo ' <p>'."\n";
                      echo ' <label for="nom">Nom :</label>'."\n";
                      echo ' <input type="text" id="nom" name="nom" value="'.stripslashes($nom).'" tabindex="1" />'."\n";
                      echo ' </p>'."\n";
                      echo ' <p>'."\n";
                      echo ' <label for="email">Email :</label>'."\n";
                      echo ' <input type="text" id="email" name="email" value="'.stripslashes($email).'" tabindex="2" />'."\n";
                      echo ' </p>'."\n";
                      echo ' </fieldset>'."\n";

                      echo ' <div style="text-align:center;"><input type="submit" name="envoi" value="Envoyer" /></div>'."\n";
                      echo '</form>'."\n";
                      };
                      ?>
                      </body>
                      Merci pour votre aide en tout cas

                      Commentaire


                        Honte à moi, manquait un point virgule au mail de confirmation ! J'avais écrit en vitesse, c'est pas très compliqué ce que tu demandais.
                        Content d'apprendre que tu as trouvé ce que tu cherchais.
                        Dernière modification par MrBean, 02 septembre 2009, 04h03.
                        http://backloggery.com/images/smileys/gentlemen.gif

                        Commentaire


                          Salut

                          Juste pour info, sois prudent avec la fonction mail($cible, $objet, $message, $headers)
                          le 4eme parametre doit etre validé à fond car il peut contenir bien plus de chose que le From:

                          ($nom et $email)

                          Il est vulnerable au 'mail injection' et quelqu'un de mal intentionné pourrait glisser un autre mail complet à l'interieur si le formulaire est accessible sur le web.
                          Tu servirais alors de relay de spam à ton insu (de ton plein gré).

                          Commentaire


                            ha oui! merci pour cette info. Ca serait donc une modification à apporter. J'ai pas encore eu à utiliser la fonction mail dans mes projets, content de l'apprendre maintenant ! Je mets ceci dans mes favoris : http://www.jellyandcustard.com/2006/...ection-in-php/
                            Dernière modification par MrBean, 02 septembre 2009, 04h24.
                            http://backloggery.com/images/smileys/gentlemen.gif

                            Commentaire

                            Chargement...
                            X