Problème d'envoi de mail

Ledid71

Nouveau WRInaute
Bonjour à tous,
Je suis débutant en développement de site web. Je travaille avec DreamWeaver CS6.
J'arrive à me débrouiller avec le HTML mais là ou
cela "coince" c'est quand je veux envoyer un mail via un formulaire en utilisant PHP.
dans le meilleurs des cas, lorsque je clique sur le bouton envoyer et j'ai une demande d'où je veux enregistrer mon fichier
xxxx.php, au lieu d'envoyer mon mail. Je vous mets ci-dessous, mon code. Je sais, il y a des bugs, mais je les corrigerai quand la fonction d'envoi de mail pourra fonctionner...
Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Document sans nom</title>
<?php


//FORMULAIRE PHP + VERIFICATION + ENVOI DU MAIL





$webmaster = "monmail@monsite.com"


// Style pour le input et le textarea 

$style_input_blanc = "style =    

\"font-family: verdana;

border-right: solid #000000 1px;

border-TOP: solid #000000 1px;

font-size: 8pt;

border-left: solid #000000 1px;

color: #000000;

border-bottom: solid #000000 1px;

background-color: #ffffff \"";

$style_input_rouge ="style = 

\"font-family: verdana;

border-right: solid #000000 1px;

border-top: solid #000000 1px;

font-size: 8pt;

border-left: solid #000000 1px;

color: #000000;

border-bottom: solid #000000 1px;

background-color: #ff0000 \"";



$style_textarea_blanc = "style = \"

font-family: verdana;

border-right: solid #000000 1px;

border-top: solid #000000 1px;

FONT-size: 8pt;

border-left: solid #000000 1px;

color: #000000;

border-bottom: solid #000000 1px;

background-color: #ffffff\"";

$style_textarea_rouge = "style = \"

font-family: verdana;

border-right: solid #000000 1px;

border-top: solid #000000 1px;

font-size: 8pt;

border-left: solid #000000 1px;

color: #000000;

border-bottom: solid #000000 1px;

background-color: #ff0000\"";

// Fin du style


if(isset($_POST['envoyer'])){ // si une action est faite par l'utilisateur

  $alerte = $_POST['envoyer']; //chargement du button envoyer

    $nom = htmlentities($_POST['nom'], ENT_NOQUOTES); // chargement du nom + mise en forme de la varible

    $mail = htmlspecialchars($_POST['mail'], ENT_QUOTES); // chargement du mail  + mise en forme de la varible

    $tel = htmlspecialchars($_POST['tel'], ENT_QUOTES); // chargement du tel + mise en forme de la varible

    $sujet = htmlspecialchars($_POST['sujet'], ENT_QUOTES); // chargement du sujet + mise en forme de la varible

    $message = htmlspecialchars($_POST['msg'], ENT_QUOTES); // chargement du message + mise en forme de la varible

}



function verif_null($var){ // fonction qui verifie si le champs est vide

    if($var!=""){

     return $var;

   }

}



function verif_mail($var) // fonction qui verifie si le mail est correct et si le champs est vide

{

   $code_syntaxe='#^[\w.-]+@[\w.-]+\.[a-zA-Z]{2,5}$#'; // chargement de la syntaxe mail valide  

      if(preg_match($code_syntaxe,$var)){ // compare la syntaxe mail valide au mail saisie

        return $var;

      }   
}



function verif_tel($var) // fonction qui verifie si le n° de tel est correct 

{

   $code_syntaxe='#^[0-9]{9,18}$#'; // chargement de la syntaxe tel valide  

      if(preg_match($code_syntaxe,$var)){ // compare la syntaxe tel valide au tel saisie

        return $var;

      }

}

function envoi_mail($webmaster,$nom,$mail,$sujet,$tel,$message){ //fonction qui envoie le mail

       $contenu_message = "Nom : ".$nom."\nMail : ".$mail."\nSujet : ".$sujet."\nTelephone : ".$tel."\nMessage : ".$message;

	   $entete = "From: ".$nom." <".$mail.">\nContent-Type: text/html; charset=iso-8859-1";

	 

       mail($webmaster,$sujet,$contenu_message,$entete);



}

 



function verif_form($webmaster,$nom,$mail,$sujet,$tel,$message){ //fonction qui verifie si le formulaire est pret a etre envoyer

       if(verif_null($nom) && verif_null($sujet) && verif_null($message) && verif_tel($tel)&& verif_mail($mail)){ // verifie si toute les fontions sont a true

		   envoi_mail($webmaster,$nom,$mail,$sujet,$tel,$message);

		   echo "<font color=\"red\"  size=\"3\" face=\"Verdana, Arial, Helvetica, sans-serif\" ><strong>Tout les champs sont valider le mail est envoyé. Merci</strong></font><br>"; // Le mail est envoyé

		}else{

		   echo "<font color=\"red\" size=\"3\" face=\"Verdana, Arial, Helvetica, sans-serif\" ><strong>Veuillez saisir correctement tous les champs en rouge.</strong></font><br>"; // Une erreur dans le formulaire

		}

}



?>



<br />

<?php 

if(isset($alerte)){ // verifi si l'utilisateur a fait l'action d'envoyer
}
   verif_form($webmaster,$nom,$mail,$sujet,$tel,$message); 

?>

<br />



<?php /* FORMULAIRE DEBUT */ ?>



<form method="post">

  <table width="44%" height="317" border="0">

    <tr>

     <td width="14%" align="left" valign="middle">

	  <font size="3" face="Verdana, Arial, Helvetica, sans-serif"> Nom :</font>

      </td>

      <td width="86%">

	 <input type="text" name="nom"  size="50" 

	  if(isset($alerte){  //si verif_null est false on background en rouge }

              if(verif_null($nom)){ 

                 echo $style_input_blanc; 

              }else { 

                echo $style_input_rouge; 

             }

           }  

        value="if(isset($alerte)){ echo $nom; }"> 

      </td>

    </tr>

    <tr>

     <td align="left" valign="middle">

	  <font size="3" face="Verdana, Arial, Helvetica, sans-serif">Mail :</font></td>

      <td>	    

	 <input type="text" name="mail" size="50"  

	 <?php  if(isset($alerte)){  //si verif_mail est false on background en rouge 

             if(verif_mail($mail)){ 

                 echo $style_input_blanc; 

              }else { 

                echo $style_input_rouge; 

              }

           } ?> 

        value="<?php  if(isset($alerte)){ echo $mail; } ?>">  

      </td>

   </tr>

    <tr>

     <td valign="middle">

      <font size="3" face="Verdana, Arial, Helvetica, sans-serif">Tel :</font></td>

     <td>  

	 <input type="text" name="tel" size="20"  

	 <?php  if(isset($alerte)){  //si verif_tel est false on background en rouge }

              if(verif_tel($tel)){ 

                 echo $style_input_blanc; 

              }else { 

               echo $style_input_rouge; 

              }

          } ?> 

        value="<?php  if(isset($alerte)){ echo $tel; } ?>"> 

      </td>

    </tr>

      <td align="left" valign="middle">

	 <font size="3" face="Verdana, Arial, Helvetica, sans-serif">Sujet :</font>

      </td>

      <td>

	<input type="text" name="sujet" size="50" 

        <?php  if(isset($alerte)){  //si verif_null est false on background en rouge 

              if(verif_null($sujet)){ 

                 echo $style_input_blanc; 

              }else { 

                echo $style_input_rouge; 

              }

           } ?> 

        value="<?php  if(isset($alerte)){ echo $sujet; } ?>"> 

      </td>

    </tr>

    <tr>

      <td height="181" valign="top">

	 <font size="3" face="Verdana, Arial, Helvetica, sans-serif">Message : </font>

      </td>

      <td valign="top">  

<textarea name="msg"  cols="47" rows="10"   if(isset($alerte)){ if(verif_null($message)){ echo $style_textarea_blanc; }else { echo $style_textarea_rouge; }}  if(isset($alerte)){ echo $message; } </textarea>

     </td>

    </tr>

    <tr>

     <td>&nbsp;

         

     </td>

      <td>

	<input type="submit"  name="envoyer" value="Envoyer">

        &nbsp;&nbsp;

        <input type="reset" value="Effacer" name="effacer" >

      </td>

    </tr>

  </table>

</form>

<? /* FOMULAIRE FIN*/ ?>


</html>

Si une bonne âme pouvait me dire où j'ai fais une ou des erreurs, j'en serais RAVI :D
D'avance merci pour votre aide.
Cordialement.
 

UsagiYojimbo

WRInaute accro
Tu utilises un serveur php local pour faire tes tests ? Parc que sans, je ne vois pas comment le PHP va être interprété...
 

Ledid71

Nouveau WRInaute
Oui spout, je voulais direWAMP :oops:
Avec le code que j'ai joins dans mon premier post, je n'ai qu'une page verte dans dreamweaver.
ce n'est que quand j' ouvre mon fichier PHP avec internet explorer que j'ai mes champs de saisies et
le message me demandant où je veux enregistrer mon fichier quand je clique sur envoyer (le message)
 

Discussions similaires

Haut