Partage
  • Partager sur Facebook
  • Partager sur Twitter

Espaces dans un formulaire

    19 février 2018 à 15:08:59

    Bonjour j'aimerai savoir comment retirer les espaces d'un formulaire. C'est a dire que si quelqu'un met uniquement des espaces dans la case du formulaire j'aimerai qu'il y ai un message d'erreur . Merci
    • Partager sur Facebook
    • Partager sur Twitter
      19 février 2018 à 23:50:14

      https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/String/trim

      let string = "  a  ";
      
      if (string.trim().length > 0)
          console.log(string);
      else
          console.log('Le texte est vide.');



      • Partager sur Facebook
      • Partager sur Twitter
      Autodidacte, j'essaye d'apprendre le pourquoi du comment :)
        22 février 2018 à 12:53:31

        çà me dit qu'il y a des erreurs dans le code
        • Partager sur Facebook
        • Partager sur Twitter
          22 février 2018 à 13:08:56

          Peux-tu envoyer l'erreur que tu as avec le code de Zirpoo
          • Partager sur Facebook
          • Partager sur Twitter
            22 février 2018 à 13:12:02


            Parse error: syntax error, unexpected 'string' (T_STRING) in C:\laragon\www\proplus\contact.php on line 106


            • Partager sur Facebook
            • Partager sur Twitter
              22 février 2018 à 13:30:01

              Bonjour,

              Besoin du Code pour voir ou est l'erreur 

              -
              Edité par Kaysertox 22 février 2018 à 13:31:12

              • Partager sur Facebook
              • Partager sur Twitter
                22 février 2018 à 13:57:38

                <?php
                 
                if(isset($_POST['nom'])){
                  
                    $nom = $_POST['nom'];
                    
                }
                if(isset($_POST['sujet'])){
                    
                    $sujet = $_POST['sujet'];
                    
                }
                if(isset($_POST['message'])){
                    
                    $message = $_POST['message'];
                }
                if(isset($_POST['email'])){
                
                    $email = $_POST['email'];
                }
                
                let string = "  a  ";
                 
                if (string.trim().length > 0)
                    console.log(string);
                else
                    console.log('Le texte est vide.');
                     //-----------------------------------------------
                     //DECLARE LES VARIABLES ICI
                     //-----------------------------------------------
                 		//Ici on appelle le plugin php mailer
                
                $phpmailer = new \PHPMailer\PHPMailer\PHPMailer();
                      
                        // Set Psmtp ou mail basique
                    $phpmailer-> IsSMTP(); //Quand ton site sera héberger sur un serveur en ligne ça marchera, en attendant faut que tu test avec mailtrap.io par exemple qui te propose un serveur smtp de test gratuitement poue t'es tst à la place de isSendMail tu met
                    //Enable SMTP debugging
                    // 0 = off (for production use)
                    // 1 = client messages
                    // 2 = client and server messages
                    $phpmailer->SMTPDebug = 2;
                    //Set the hostname of the mail server
                    $phpmailer->Host = 'smtp.mailtrap.io';
                    // use
                    // $mail->Host = gethostbyname('smtp.gmail.com');
                    // if your network does not support SMTP over IPv6
                    //Set the SMTP port number - 587 for authenticated TLS, a.k.a. RFC4409 SMTP submission
                    $phpmailer->Port =  2525;
                    //Set the encryption system to use - ssl (deprecated) or tls
                    $phpmailer->SMTPSecure = 'Optional';
                    //Whether to use SMTP authentication
                    $phpmailer->SMTPAuth = true;
                    //Username to use for SMTP authentication - use full email address for gmail
                    $phpmailer->Username = "c66742f0221526"; //ton mail
                    //Password to use for SMTP authentication
                    $phpmailer->Password = "f774e5e1c5d75d"; //ton pass 
                    //Mail de qui ?
                    $phpmailer->setFrom('from@example.com', 'First Last');
                    // réponse a qui
                    $phpmailer->addReplyTo('replyto@example.com', 'First Last');
                    //envoyer a qui ?
                    $phpmailer->addAddress('@gmail.com', 'John Doe');
                    //Sujet
                    $phpmailer->Subject = 'PHPMailer sendmail test';
                    //Message en html
                    $phpmailer->msgHTML("<h1>Contact</h1>");
                    //Message en texte si le html ne s'affiche pas chez les gens
                     $message =  "\r\n Nom: " . $_POST['nom'] . "\r\n Sujet: " . $_POST['sujet'] . "\r\n Email: " . $_POST['email'] . "\r\n Message: " . $_POST['message']; 
                     $phpmailer->AltBody = $message;
                	
                	//on envoie ou on affiche une erreur
                	if (!$phpmailer->send()) {
                		 header('Location: demande.html');
                	   
                	} else {
                	    header('Location: demande.html');
                	}
                	?>

                -
                Edité par ArianeOliver 22 février 2018 à 13:58:26

                • Partager sur Facebook
                • Partager sur Twitter
                  22 février 2018 à 15:40:50

                  Ok bon tu as fait une erreur tu n'es pas dans la bonne section de forum normalement ta question aurait du se trouver dans la section "PHP" et là tu es en "Javascript" 

                  Nous t'avons donner la solution en "Javascript" et non en "PHP" 

                  Voici la solution en php : 

                  htmlspecialchars(strip_tags(trim($_POST['email'])));

                  ça va enlever les espaces et enlever aussi tous les caractères spéciaux (un peut de sécurité ne fait de mal)

                  • Partager sur Facebook
                  • Partager sur Twitter
                    23 février 2018 à 13:12:29

                    et comment le placer dans javascript ? parce que ca ne me donne pas de resultat . Peut etre que je le met mal
                    • Partager sur Facebook
                    • Partager sur Twitter
                      25 février 2018 à 23:01:41

                      Et le problème c'est que tu ne pourras pas le faire en javascript enfin pas comme tu le fais: 

                      - Et bien pour ce genre de chose j'utilise Ajax et je fais mes test dans le fichier PHP

                      Voilà a quoi ça peut ressembler :

                      <!DOCTYPE html>
                      <html lang="en">
                      <head>
                          <meta charset="UTF-8">
                          <title>Mon Formulaire d'envoi</title>
                          <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
                          <script type="text/javascript" src="myScript.js"></script>
                      </head>
                      <body>
                          <form id="myForm" method="post">
                      
                              <input type="text" id="nom" name="nom" placeholder="nom" required/>
                      
                              <input type="text" id="sujet" name="sujet" placeholder="sujet" required/>
                      
                              <input type="text" id="message" name="message" placeholder="message" required/>
                      
                              <input type="email" id="email" name="email" placeholder="email" required/>
                      
                              <input type="submit" value="Envoyer" />
                      
                          </form>
                      </body>
                      </html>
                      $('#myForm').submit(function (e) {
                          e.preventDefault(); //On annule l'envoie du formulaire a la page php
                          var formData = $('#sendEmailForm').serialize();
                          console.log(formData);
                          $.ajax({
                              url: 'http://192.168.1.29/help/2sendEmail.php',
                              type: 'post',
                              data: formData
                          })
                          .done(function(data){
                              if(data == "success") {
                                  alert("Message envoyé");
                                  resetForm('#myForm'); // On vide le formulaire
                              } else {
                                  alert(data);
                              }
                          });
                      });
                      
                      // Vide tous les champs de texte d'un formulaire
                      function resetForm(idForm) {
                          $(':input', idForm)
                              .not(':button, :submit, :reset, :hidden, :checkbox')
                              .val('')
                              .removeAttr('selected');
                      }
                      
                      <?php
                      /**
                       * Created by PhpStorm.
                       * User: justin
                       * Date: 25/02/2018
                       * Time: 22:07
                       */
                      
                      if(isset($_POST['nom'])&&isset($_POST['email'])&&isset($_POST['sujet'])&&isset($_POST['message'])&&(isset($_POST['email']))) {
                      
                          $mail = htmlspecialchars(strip_tags(trim($_POST['email'])));
                          $nom = htmlspecialchars(strip_tags(trim($_POST['nom'])));
                          $sujet = htmlspecialchars(strip_tags(trim($_POST['sujet'])));
                          $message = htmlspecialchars(strip_tags(trim($_POST['message'])));
                      
                          $champsVide = "Erreur sur le champ ";
                          $erreur = "";
                      
                          if ($mail == "")
                              $erreur .= $champsVide."email\n";
                      
                          if ($nom == "")
                              $erreur .= $champsVide."nom\n";
                      
                          if ($sujet == "")
                              $erreur .= $champsVide."sujet\n";
                      
                          if ($message == "")
                              $erreur .= $champsVide."message\n";
                      
                          if ($erreur != "") {
                              //-----------------------------------------------
                              //DECLARE LES VARIABLES ICI
                              //-----------------------------------------------
                              //Ici on appelle le plugin php mailer
                      
                              $phpmailer = new \PHPMailer\PHPMailer\PHPMailer();
                      
                              // Set Psmtp ou mail basique
                              $phpmailer->IsSMTP(); //Quand ton site sera héberger sur un serveur en ligne ça marchera, en attendant faut que tu test avec mailtrap.io par exemple qui te propose un serveur smtp de test gratuitement poue t'es tst à la place de isSendMail tu met
                              //Enable SMTP debugging
                              // 0 = off (for production use)
                              // 1 = client messages
                              // 2 = client and server messages
                              $phpmailer->SMTPDebug = 2;
                              //Set the hostname of the mail server
                              $phpmailer->Host = 'smtp.mailtrap.io';
                              // use
                              // $mail->Host = gethostbyname('smtp.gmail.com');
                              // if your network does not support SMTP over IPv6
                              //Set the SMTP port number - 587 for authenticated TLS, a.k.a. RFC4409 SMTP submission
                              $phpmailer->Port = 2525;
                              //Set the encryption system to use - ssl (deprecated) or tls
                              $phpmailer->SMTPSecure = 'Optional';
                              //Whether to use SMTP authentication
                              $phpmailer->SMTPAuth = true;
                              //Username to use for SMTP authentication - use full email address for gmail
                              $phpmailer->Username = "c66742f0221526"; //ton mail
                              //Password to use for SMTP authentication
                              $phpmailer->Password = "f774e5e1c5d75d"; //ton pass
                              //Mail de qui ?
                              $phpmailer->setFrom('from@example.com', 'First Last');
                              // réponse a qui
                              $phpmailer->addReplyTo('replyto@example.com', 'First Last');
                              //envoyer a qui ?
                              $phpmailer->addAddress('@gmail.com', 'John Doe');
                              //Sujet
                              $phpmailer->Subject = 'PHPMailer sendmail test';
                              //Message en html
                              $phpmailer->msgHTML("<h1>Contact</h1>");
                              //Message en texte si le html ne s'affiche pas chez les gens
                              $message = "\r\n Nom: " . $_POST['nom'] . "\r\n Sujet: " . $_POST['sujet'] . "\r\n Email: " . $_POST['email'] . "\r\n Message: " . $_POST['message'];
                              $phpmailer->AltBody = $message;
                      
                              //on envoie ou on affiche une erreur
                              if (!$phpmailer->send())
                                  echo "success";
                              else
                                  echo "erreur dans l'envoie";
                          }
                          else echo $erreur;
                      }
                      else echo "Champ(s) non rempli(s)";





                      -
                      Edité par PheniXosBurn 25 février 2018 à 23:02:40

                      • Partager sur Facebook
                      • Partager sur Twitter

                      Espaces dans un formulaire

                      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                      • Editeur
                      • Markdown