Parse error.... php pour envoi formulaire - Page 2

  1. rien y fait alain g tout bien fait
    0
    1. je suis completement paumé dans mon script j'essaye je doit pas mettre au bonne endroit pourrait tu m'indiquer ou dois mettre la fontion
      $adresse=htmlentities($_POST['adresse']);
      if(VerifierAdresseMail($adresse))
      echo '<p>Votre adresse est valide.</p>';
      else
      echo '<p>Votre adresse e-mail n\'est pas valide.</p>';
      0
      1. Salut !
        Ben écoute, pour éviter tout problème, mieux vaux que t'essaye de trouve une solution pour activer(utiliser) la version 5 de PHP ... car tôt ou tard, tu va rencontrer d'autres problème, et peut être même des failles de sécurité ...
        0
    2. <?php
      		/////fonctions php (on met les fonctions au début du script, elles peuvent être appelées depuis n'importe ou dans la page
      //fonction verif adresse mail
      function VerifierAdresseMail($adresse) 
      { 
         $Syntaxe='#^[\w.-]+@[\w.-]+\.[a-zA-Z]{2,6}$#'; 
         if(preg_match($Syntaxe,$adresse)) 
            return true; 
         else 
           return false; 
      }
      
      /////
      if(isset($_POST) AND !empty($_POST)) {
      extract($_POST);
      $errorMsgs = '';
      //-------------
      if(!isset($nom) OR empty($nom)) {
      $errorMsgs .= 'Vous avez oubliez le nom.<br />';
      }
      elseif(strlen($nom) > 40) {
      $errorMsgs .= 'Nom incorrect.<br />';
      }
      //---
      if(!isset($prenom) OR empty($prenom)) {
      $errorMsgs .= 'Vous avez oubliez le prénom.<br />';
      }
      elseif(strlen($prenom) > 40) {
      $errorMsgs .= 'Prénom incorrect.<br />';
      }
      //  Verif mail---
      if(!isset($email) OR empty($email)) {
      	$errorMsgs .= 'Vous avez oubliez l\'email.<br />';
      }elseif(VerifierAdresseMail($email)){
      //si mail pas ok alors message d'erreur
      	$errorMsgs .= 'Adressse email non valide !.<br />';
      }
      //fin verif mail
      
      if(!isset($sujet) OR empty($sujet)) {
      $errorMsgs .= 'Vous avez oubliez le sujet.<br />';
      }
      elseif(strlen($sujet) > 200) {
      $errorMsgs .= 'Sujet trop long.<br />';
      }
      //---
      if(!isset($message) OR empty($message)) {
      $errorMsgs .= 'Vous avez oubliez le message.<br />';
      }
      elseif(strlen($message) > 2000) {
      $errorMsgs .= 'Message trop long.<br />';
      }
      //--------------
      if(empty($errorMsgs)) {
      $destinataire = 'llaume200581@free.fr';
      $sujetMail = 'Formulaire de contact';
      
      $msg = 'Une nouvelle question est arrivée \n';
      $msg .= 'Nom : '.$nom.' \n';
      $msg .= 'Prenom : '.$prenom.' \n';
      $msg .= 'Email : '.$email.' \n';
      $msg .= 'Sujet : '.$sujet.'\nMessage : '.$message;
      
      $entete = 'From: $nom \n';
      $entete .= 'Reply-To: '.$email.'\n';
      
      $env_mail = mail($destinataire, $sujetMail, $msg, $entete);
      
      if($env_mail) {
      echo "Le mail a bien été envoyé.";
      }
      else {
      echo "Pb avec l'envoi du mail";
      }
      }
      else {
      echo $errorMsgs;
      }
      }
      ?>
      0
      1. quand clique sur envoyer page blanche et 'Adressse email non valide
        0
        1. function VerifierAdresseMail($adresse)    
          {    
             $Syntaxe='#^[\w.-]+@[\w.-]+\.[a-zA-Z]{2,6}$#';    
             if(!preg_match($Syntaxe,$adresse))    
                return true;    
             else    
               return false;    
          }


          Ajoute un "!" avant le preg_match, comme ci-dessus !

          Si ça marche toujours pas, c'est que ça vient de la version de PHP que t'utilise, parce que chez moi ça marche normal !

          Essaye en créant un fichier .htaccess, et mets ce qui suit dedans !
          SetEnv PHP_VER 5


          PS : Il faut mettre ce fichier a la racine de ton site !
          0
      2. bonjour
        alors ca marche nikel mais le gros hic c'est que je ne reçoit rien dans ma boite email alors qu'il me dit bien le mail à été envoyé ?
        0
        1. Vérifie dans le dossier SPAM(Courrier indésirable) de ta boite !
          0
      3. En fait je viens de recevoir un email hihihi
        merci alain et joo_s pour m'avoir aider
        néanmoins voici la mise en forme du mail lors de la réception
        Une nouvelle question est arriv?e \nNom : ccccccccccccccccccccc \nPrenom : cvx \nEmail : guillonet@hotmail.fr \nSujet : cccccccccccccc\nMessage : cccccccccccccc
        possible d'enlever le \n et possible de revenir à la ligne pour chaque il me semblait que <br> suffisait ?
        genre
        un nouveau formulaire vient d' arrivé

        non :cccccccccccccccccccc
        prénom :cccccc
        Email ; gui...
        ..............

        merci je vous fout la paix après
        0
      4. g compris qu'il faut envoyer l email au format html mais sérieux c du chinois ?
        0
        1. Ben suffit d'ajouter l'option dans les headers qui précise que l'email est au format html !
          Puis le contenu de l'email doit être en html, or, tu peut utiliser les balises ...
          0
      5. j'abuse peut-être mais jsuis depuis 2 jous sur l'envoi htlm serieux pouvez vs m'aider
        voici la mise en forme du mail lors de la réception
        Une nouvelle question est arriv?e \nNom : ccccccccccccccccccccc \nPrenom : cvx \nEmail : guillonet@hotmail.fr \nSujet : cccccccccccccc\nMessage : cccccccccccccc
        possible d'enlever le \n et possible de revenir à la ligne pour chaque il me semblait que <u>i> suffisait ?
        genre
        un nouveau formulaire vient d' arrivé

        non :cccccccccccccccccccc
        prénom :cccccc
        Email ; gui...
        ..............
        voila mon script php
        <?php
        /////fonctions php (on met les fonctions au début du script, elles peuvent être appelées depuis n'importe ou dans la page
        //fonction verif adresse mail
        function VerifierAdresseMail($adresse)
        {
        $Syntaxe='#^[\w.-]+@[\w.-]+\.[a-zA-Z]{2,6}$#';
        if(!preg_match($Syntaxe,$adresse))
        return true;
        else
        return false;
        }

        /////
        if(isset($_POST) AND !empty($_POST)) {
        extract($_POST);
        $errorMsgs = '';
        //-------------
        if(!isset($nom) OR empty($nom)) {
        $errorMsgs .= 'Vous avez oubliez le nom.<br />';
        }
        elseif(strlen($nom) > 40) {
        $errorMsgs .= 'Nom incorrect.<br />';
        }
        //---
        if(!isset($prenom) OR empty($prenom)) {
        $errorMsgs .= 'Vous avez oubliez le prénom.<br />';
        }
        elseif(strlen($prenom) > 40) {
        $errorMsgs .= 'Prénom incorrect.<br />';
        }
        // Verif mail---
        if(!isset($email) OR empty($email)) {
        $errorMsgs .= 'Vous avez oubliez l\'email.<br />';
        }elseif(VerifierAdresseMail($email)){
        //si mail pas ok alors message d'erreur
        $errorMsgs .= 'Adressse email non valide !.<br />';
        }
        //fin verif mail

        if(!isset($sujet) OR empty($sujet)) {
        $errorMsgs .= 'Vous avez oubliez le sujet.<br />';
        }
        elseif(strlen($sujet) > 200) {
        $errorMsgs .= 'Sujet trop long.<br />';
        }
        //---
        if(!isset($message) OR empty($message)) {
        $errorMsgs .= 'Vous avez oubliez le message.<br />';
        }
        elseif(strlen($message) > 2000) {
        $errorMsgs .= 'Message trop long.<br />';
        }
        //--------------
        if(empty($errorMsgs)) {
        $destinataire = 'lxxxxxxxxxxxxx@xxxxxxx.xx';
        $sujetMail = 'Formulaire de contact';

        $msg = 'Une nouveau formulaire est arrivée \n';
        $msg .= 'Nom : '.$nom.' \n';
        $msg .= 'Prenom : '.$prenom.' \n';
        $msg .= 'Email : '.$email.' \n';
        $msg .= 'Sujet : '.$sujet.'\nMessage : '.$message;

        $entete = 'From: $nom \n';
        $entete .= 'Reply-To: '.$email.'\n';

        $env_mail = mail($destinataire, $sujetMail, $msg, $entete);

        if($env_mail) {
        echo "Le mail a bien été envoyé.";
        }
        else {
        echo "Pb avec l'envoi du mail";
        }
        }
        else {
        echo $errorMsgs;
        }
        }
        ?>nv
        0
        1. Ben ça se voit que t'as pas vraiment chercher avec les deux sites que je t'ai citer plus haut, pourtant c'est clair !
          0
      6. ok je vais chercher encore merci pour ton aide
        0
        1. je m'occupe d'une autre chose pour l'instant
          j'aimerai rediriger dans un tableau html bien ciblé après envoi du formulaire php
          alors g bien trouvé des codes sur les forum qui marche
          Remplace la ligne :

          if($envoi) echo"Le mail a bien été envoyé !";

          par

          if($envoi) header("location:ma_page_html.html");

          mais je n'arrive pas ce que ce soit rediriger dans un tableau html ciblé
          si quelqu'un pourrait et je suis pas un mec du genre à ne pas regarder dans les forums
          si je demande c que jsuis coincé
          merci
          0
          1. header('Location: ma_page_html.html');
            0
        2. si tu lit bien tout ce qu j'ai mis, tu verrais que c 'est exactement ce que g mis et ça marche d'ailleurs mais ce que je n'arrive pas à faire c 'est ce que ce soit rediriger dans un tableau html ciblé ?
          0
          1. Ben j'avais compris que la redirection ne fonctionnait pas, car j'ai déjà eu un problème avec la fonction header, et il fallait mettre un espace entre le ":" et l'url, un espace que t'as omis de mettre, mais si ça marche sans, alors tant mieux !

            appart ça !
            ce soit rediriger dans un tableau html ciblé ?
            Explique, parce tableau html ciblé ne veut rien dire pour moi ...
            0
        3. j'aimerai rediriger dans un tableau html après envoi du formulaire
          j 'explique :
          dans une page1.html j'ai deux tableaux
          -tableau1 avec une image
          -tableau 2 mon formulaire html avec le bouton envoyer qui a comme action formulaire.php
          je clique sur envoyer il s'affiche sur une page blanche "le mail à bien été envoyé"
          normal tu me diras
          je crée page2.html j'ai deux tableau
          -tableau 1 avec image
          -tableau2 j'aimerai que s'affiche dans ce tableau "le mail à bien été envoyé"
          possible ?
          0
          1. Ben il suffit de faire la redirection vers la page2.html, et d'écrire dans le tableau 2 le message que tu veux !
            0
        4. je me suis mal exprimé je reprends
          dans une page1.html j'ai deux tableaux
          -tableau1 avec une image
          -tableau 2 mon formulaire html avec le bouton envoyer qui a comme action formulaire.php
          je clique sur envoyer il s'affiche sur une page blanche "le mail à bien été envoyé"
          normal tu me diras
          je crée page2.html j'ai deux tableau
          -tableau 1 avec image
          -tableau2 j'aimerai que s'affiche dans ce tableau "le mail à bien été envoyé" qui provient de mon"formulairephp.php
          possible ?
          0
          1. A ma connaissance, une page HTML ne peut communiquer directement avec un script PHP !

            Donc tu reconvertit page2.html en page2.php, et la, peut être que tu pourra faire quelque chose, et dans ce cas, page2.php deviendra formulaire.php (car non nécessaire d'avoir les deux pages) !
            0
        5. Joos:
          A ma connaissance, une page HTML ne peut communiquer directement avec un script PHP
          Et pourtant si ==>
          dans ta page html si tu as un formulaire dont action="une_page.php" cela appeler bien une page php en lui envoyant les valeurs du formulaire

          par contre llaume200581:
          je crée page2.html j'ai deux tableau
          -tableau 1 avec image
          -tableau2 j'aimerai que s'affiche dans ce tableau "le mail à bien été envoyé"
          possible ?

          NON
          Il faut que ta page soit en php et tu mets tout sur la page:
          - le tableau image
          - le script qui traite l'envoi du mail
          - le formulaire qui ne devra plus être affiché après l'envoi du mail
          - mais remplacé par le message envoi du mail OK
          0
          1. Communiquer, c'est envoyer et recevoir, parler et comprendre, sinon ça ne sert a rien de savoir faire qu'une seule tache parmi ces deux dernières :) !
            une page html peut envoyer des informations, mais ne peut en recevoir !
            0
        6. Je revient vous voir concernant l'envoi de mai au format
          erreur
          Warning: mail() [function.mail]: Nombre de parametres incorrects in /mnt/112/sda/1/c/marilynsenechal/php/formulairephp.php on line 69
          Pb avec l'envoi du mail

          $destinataire = 'llaume200581@free.fr';
          $sujetMail = 'Formulaire de contact';

          $message ='<html><head><title>Un titre ici</title></head><body>Un message de test</body></html>';
          $msg = 'Une nouveau formulaire est arrivée \n';
          $msg .= 'Nom : '.$nom.' \n';
          $msg .= 'Prenom : '.$prenom.' \n';
          $msg .= 'Email : '.$email.' \n';
          $msg .= 'Sujet : '.$sujet.'\nMessage : '.$message;

          $entete = 'From: $nom \n';
          $entete .= 'Reply-To: '.$email.'\n';
          $entete .='Content-Type: text/html; charset="iso-8859-1"'."\n";

          $env_mail = mail($destinataire, $sujetMail, $msg, $entete, $message);

          if($env_mail) {
          echo "Le mail a bien été envoyé.";
          }
          0
          1. je cherchen'y a t-il pas un soucis avec free
            0
            1. c $message quand jlenleve y marche mais pk??????
              0
              1. Pas besoin d'avoir un niveau avancée en anglais pour pouvoir comprendre les messages d'erreur.
                :)
                0
            2. regardes sur Google la fonction mail de php tu verra qu'il n'y a pas tous ces parametres tu as mis:

              mail($destinataire, $sujetMail, $msg, $entete, $message)

              que fait ce $mesage à la fin ??

              et pourquoi vouloir envoyer en HTML, \n fait très bien les retours à la ligne si l'entête est codée correctement
              0
              1. envoi en mode non html

                nomme cette page xxxxxx.php

                cela répond à ta question ou toput est sur la même page
                <!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" lang="fr">
                <head>
                	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
                	<title>Ton titre de page</title>
                </head>
                <body>
                <!-- 
                
                la tu peux mettre ton taleau image 
                
                -->
                <?php
                			//partie traitement de l'envoi du mail
                	////fonctions php (on met les fonctions au début du script, elles peuvent être appelées depuis n'importe ou dans la page
                //fonction verif adresse mail
                function VerifierAdresseMail($adresse){
                	$Syntaxe='#^[\w.-]+@[\w.-]+\.[a-zA-Z]{2,6}$#';
                	if(!preg_match($Syntaxe,$adresse)){
                		//si pas valide on retourne true
                		return true;
                	}else{
                		return false;
                	}
                }
                
                	//fin fonctions php		
                ////init des varaibles de travail
                $affichage_formulaire=true;
                ////
                
                		//envoi du mail
                if(isset($_POST) AND !empty($_POST)) {
                	extract($_POST);
                	$errorMsgs = '';
                	//-------------
                	if(!isset($nom) OR empty($nom)) {
                		$errorMsgs .= 'Vous avez oublié le nom.<br />';
                	}elseif(strlen($nom) > 40) {
                		$errorMsgs .= 'Nom incorrect.<br />';
                	}
                	//---
                	if(!isset($prenom) OR empty($prenom)) {
                		$errorMsgs .= 'Vous avez oubliez le prénom.<br />';
                	}elseif(strlen($prenom) > 40) {
                		$errorMsgs .= 'Prénom incorrect.<br />';
                	}
                	// Verif mail---
                	if(!isset($email) OR empty($email)) {
                		$errorMsgs .= 'Vous avez oubliez l\'email.<br />';
                	}elseif(VerifierAdresseMail($email)){
                	//si mail pas ok alors message d'erreur
                		$errorMsgs .= 'Adressse email non valide !.<br />';
                	}
                	//fin verif mail
                
                	if(!isset($sujet) OR empty($sujet)) {
                		$errorMsgs .= 'Vous avez oubliez le sujet.<br />';
                	}elseif(strlen($sujet) > 200) {
                		$errorMsgs .= 'Sujet trop long.<br />';
                	}
                	//---
                	if(!isset($message) OR empty($message)) {
                		$errorMsgs .= 'Vous avez oubliez le message.<br />';
                	}
                	elseif(strlen($message) > 2000) {
                		$errorMsgs .= 'Message trop long.<br />';
                	}
                	//-------------- fin des verifs
                	if(empty($errorMsgs)) {
                		//il n'y a pas d'erreur
                		//donc on ne reaffichera pas le formulaire
                		$affichage_formulaire=false;
                		
                		$entete = "From: \"Ton nom\"<ton_adresse_mail_a_toi>"."\n"; //car le mail est envoyé depuis le serveur qui heberge ton site
                		$entete .= "Reply-To: ".$email."\n";
                		$entete .= "MIME-Version: 1.0"."\n";
                		$entete .= "Content-Type: text/plain; charset=\"iso-8859-1\""."\n";
                		$entete .= "Content-Transfer-Encoding: 8bit"."\n"; 
                		
                		$destinataire = 'lxxxxxxxxxxxxx@xxxxxxx.xx';
                		$sujetMail = 'Formulaire de contact';
                
                		$msg = "Une nouveau formulaire est arrivé". "\n";
                		$msg .= "Nom : ".$nom."\n";
                		$msg .= "Prenom : ".$prenom."\n";
                		$msg .= "Email : ".$email."\n";
                		$msg .= "Sujet : ".$sujet."\n";
                		$msg .= "Message : ".$message;
                
                		$env_mail = mail($destinataire, $sujetMail, $msg, $entete);
                
                		if($env_mail) {
                			echo "Le mail a bien été envoyé.";
                		}
                		else {
                			echo "Pb avec l'envoi du mail";
                		}
                	}else {
                		echo $errorMsgs;
                	}
                }
                
                if($affichage_formulaire){ //sous entendu =true
                ?>
                	<!-- 
                	
                	ici tu mets ton formulaire html
                	et dans la balise form tu mets pour que la page s'appelle elle même
                	<form name="form1" method="post" action="" >
                	
                	-->
                <?php
                
                } //fin if affichage formulaire
                ?>	
                
                </body>	
                </html>
                0
                Précédent
                • 1
                • 2