Problème formulaire PHP
Posté : 24 nov. 2007, 21:06
Bonjour,
Je reprends un sujet déjà traité mais qui semble ne pas répondre à mon problème analogue... la présentation était la suivante... (Désolé, c'est une peu long, mais c'est pour être le plus clair possible...)
"J'ai un script PHP pour recevoir par mail les résultats de mon formulaire. Tout était ok depuis que mon site était en ligne il y a environ 6 mois.
Mon hébergeur LWS (hébergement discount) a changé son serveur mail le mois dernier et maintenant je ne reçois plus les résultats de mon formulaire par mail.
Je les ai contacté, ils m'ont indiqué qu'il fallait mettre un adresse mail avec mon domaine (adresse que j'ai créé et qui fonctionne) et ils m'ont précisé ensuite qui fallait remplir les entêtes correctement pour éviter d'être considéré comme spam ($e-mail, $titre, $message, $entete...). J'ai tenté de chercher sur Internet de la doc et de modifier mon script mais sans succès.
Voici mon script tel qu'il fonctionnait avant le changement de serveur de mon hébergeur :
Aujourd'hui, j'ai le même problème avec cet hébergeur et voici le script qui fonctionnait chez eux avant le changement du serveur et que je viens de tester avec succès sur free :
"Vous devez mettre $msg .= "Partenaire:\t$partenaire\r\n";
\r\n à la fin de chaque ligne pour qu'il n' y ai pas de problème."
Merci d'avance...
Je reprends un sujet déjà traité mais qui semble ne pas répondre à mon problème analogue... la présentation était la suivante... (Désolé, c'est une peu long, mais c'est pour être le plus clair possible...)
"J'ai un script PHP pour recevoir par mail les résultats de mon formulaire. Tout était ok depuis que mon site était en ligne il y a environ 6 mois.
Mon hébergeur LWS (hébergement discount) a changé son serveur mail le mois dernier et maintenant je ne reçois plus les résultats de mon formulaire par mail.
Je les ai contacté, ils m'ont indiqué qu'il fallait mettre un adresse mail avec mon domaine (adresse que j'ai créé et qui fonctionne) et ils m'ont précisé ensuite qui fallait remplir les entêtes correctement pour éviter d'être considéré comme spam ($e-mail, $titre, $message, $entete...). J'ai tenté de chercher sur Internet de la doc et de modifier mon script mais sans succès.
Voici mon script tel qu'il fonctionnait avant le changement de serveur de mon hébergeur :
Aujourd'hui, j'ai le même problème avec cet hébergeur et voici le script qui fonctionnait chez eux avant le changement du serveur et que je viens de tester avec succès sur free :
<?php
$msg = "Nombre: \t$groupedeboutonsradio1\n";
$msg .= "Société:\t$societe\n";
$msg .= "Nom/Prénom:\t$nom\n";
$msg .= "Adresse:\t$adresse\n";
$msg .= "CP/Ville:\t$cp\n";
$msg .= "Tel/Fax: \t$tel\n";
$msg .= "E-Mail:\t$email\n";
$recipient = "[email protected]";
$subject = "sujet";
$redirection = "redirection.html";
$url_redir = $redirection;
$mailheaders = "From: titre\n";
$mailheaders .= "Reply-To: $CP\n\n";
mail($recipient, $subject, $msg, $mailheaders);
echo "<script language=\"javascript\">";
echo "window.location=('$url_redir');";
echo "</script>";
echo "$reponse";
echo "</BODY></HTML>";
?>
L'hébergeur m'explique qu'il faut des entêtes pour éviter leur anti spam, bien que je reçoive régulièrement des spams de chez eux ??? Bref, après plusieurs échanges avec eux, voici à ce quoi je suis arrivé, mais cela n'a rien changé ! En fait, je pense avoir mal compris et appliqué leurs directives, notamment celle-ci :"Vous devez mettre $msg .= "Partenaire:\t$partenaire\r\n";
\r\n à la fin de chaque ligne pour qu'il n' y ai pas de problème."
<?php
$to = '[email protected]';
$from = '[email protected]';
$entete = "MIME-Version: 1.0\r\n";
$entete .= "Content-type: text/html; charset=iso-8859-1\r\n";
$entete .= "From: $from <[email protected]>\r\n";
$entete .= "Reply-to: $from\r\n";
$entete .= "X-Mailer: PHP\r\n";
$entete .= "X-Priority: 1\r\n";
$entete .= "Return-Path: <[email protected]>\r\n";
$msg = "Nombre: \t$groupedeboutonsradio1\r\n";
$msg .= "Société:\t$societe\r\n";
$msg .= "Partenaire:\t$partenaire\r\n";
$msg .= "Téléphone:\t$telephone\r\n";
$msg .= "Horaires:\t$horaires\r\n";
$recipient = "[email protected]\r\n";
$sujet = "sujet\r\n";
$redirection = "redirection.html";
$url_redir = $redirection;
$mailheaders = "From: titre\n";
$mailheaders .= "Reply-To: $CP\n\n";
mail($to,$sujet,$msg,$entete,$mailheaders);
echo "<script language=\"javascript\">";
echo "window.location=('$url_redir');";
echo "</script>";
echo "$reponse";
echo "</BODY></HTML>";
?>
Mais comme je ne suis pas doué, j'ai du faire des fautes énormes qui contrarie le serveur ? Alors si vous avez une idée qui peut me sauver, elle sera la bienvenue Merci d'avance...