8791 sujets

Développement web côté serveur, CMS

Salut à tous,

Décidement, je bataille avec les formulaires en ce moment...

Le code fonctionne en local mais dès que je le teste en ligne, rien, nada, quedalle, le mail n'est visiblement pas expédié, je seche comme une méduse au soleil... helpppppp !!!


<?php
$email_webmaster = "monmail@domaine.fr";
// === traitement des données du formulaire ============================================================
		if (isset($_POST["envoyer"])){
		// le formulaire a été soumis
        $etat = "erreur";
		// Valeur par défaut. Prendra la valeur "ok" s'il n'y a pas d'erreur
		// --- mise en forme des champs saisis dans le formulaire lors de sa soumission ---
        if (isset($_POST["email_expediteur"])) {
                 $_POST["email_expediteur"]=trim(stripslashes($_POST["email_expediteur"]));
        }
		if (isset($_POST["Phone"])) {
                 $_POST["Phone"]=trim(stripslashes($_POST["Phone"]));
        }
        if (isset($_POST["titre"])) {
                 $_POST["titre"]=trim(stripslashes($_POST["titre"]));
        }
        if (isset($_POST["message"])) {
                 $_POST["message"]=trim(stripslashes($_POST["message"]));
        }
		
        // --- test de la validité des champs saisis ---
        if (empty($_POST["email_expediteur"])) {
		// il manque l'email de l'expéditeur
                 $erreur=TXT_Erreur1; 
        }
        elseif (!eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\.[a-z]{2,4}$",$_POST["email_expediteur"])){
		// l'adresse e-mail n'est pas valide
                 $erreur=TXT_Erreur2; 
        }
        elseif (empty($_POST["message"])) {
		// le message est vide
                 $erreur=TXT_Erreur3; 
        }
        else {
		// --- tous les champs sont correctement remplis: on pourra envoyer le mail ---
                 $etat="ok";
        }
}
		else {
		// --- le formulaire n'a pas été soumis ---
           $etat="attente";
}
// === fin de traitement des données du formulaire =======================================================
?>

<h3><?php echo TXT_Contact; ?></h3>
<?php
if ($etat!="ok"){
// le formulaire n'a pas été soumis, ou soumis avec une erreur
        if ($etat=="erreur"){
//le formulaire a été soumis avec une erreur
        echo "<p><strong>".$erreur."</strong></p>\n";
// afficher le message d'erreur
         }
?>
		<form method="post" action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>">  
		
        <p><label for="email_expediteur"><?php echo TXT_Mail; ?></label><br />
        <input type="text" size="40" name="email_expediteur" id="email_expediteur" value="<?php
        if (!empty($_POST["email_expediteur"])) {
// l'adresse email de l'expéditeur a été saisie: la réafficher
                echo htmlspecialchars($_POST["email_expediteur"],ENT_QUOTES);
        }
        ?>" />
        </p>
	
        <p><label for="titre"><?php echo TXT_Objet; ?></label><br />
        <input type="text" size="40" name="titre" id="titre" value="<?php
        if (!empty($_POST["titre"])) {
// le titre du message a été saisi: le réafficher
                echo htmlspecialchars($_POST["titre"],ENT_QUOTES);
        }
        ?>" />
        </p>
		
		<p><label for="phone"><?php echo TXT_Phone; ?></label><br />
        <input type="text" size="40" name="phone" id="phone" value="<?php
        if (!empty($_POST["phone"])) {
                echo htmlspecialchars($_POST["phone"],ENT_QUOTES);
        }
        ?>" />
        </p>
		
        <p><label for="message"><?php echo TXT_Message; ?></label><br />
        <textarea name="message" id="message" cols="40" rows="10"><?php
        if (isset($_POST["message"])) {
// le message a été saisi: le réafficher
                echo htmlspecialchars($_POST["message"],ENT_QUOTES);
        }
        ?></textarea>
        </p>
		
        <p><input type="submit" name="envoyer" value="<?php echo TXT_Envoi; ?>" />
        </p>
        </form>
<?php
}
else {
// le formulaire a été soumis sans erreur, on envoie le mail


				$entete = "From: ".$_POST["email_expediteur"]." <".$_POST["email_expediteur"].">\n";  
				$msg = 'Tel : '.$_POST["phone"]."\n".'Message : '.$_POST["message"]."\n".'Email : '.$_POST["email_expediteur"]; 
				if (@mail($email_webmaster,$_POST["titre"],$msg,$entete)){ 
		
// mail envoyé
                echo TXT_MessOK;
                echo TXT_NewMail;
        }
        else {
// erreur lors de l'envoi du mail
                echo TXT_Problem;
                echo TXT_Retry;
        }
}
?>


J'upload une mousse à qui saura me dépanner ! Smiley lol
Merci