Aller au contenu

Problème avec mailer sur webmaster hub


Sujets conseillés

Posté

Bonjour,

J'ai fais un copier coller du script trouver sur le site. J'ai mis mon adresse mail comme destinataire. Mais je ne reçois rien.

Ca fait déjà 24 heures. J'ai une adresse gmail. Il dit que le mail est bien envoyé.

Quelqu'un a eu le même soucis? ou sais d'ou cela pourrai venir?

Merci d'avance

Posté

Colle le script ici, certain hebergeur ne propose pas la fonction ()Mail'

Mais colle quand même le script que les pro puissent te dire ça.

Posté

Voici le code :

$email_webmaster = "webmaster_AT_domaine.tld"; --> dans cette ligne j'ai bien modifié l'adresse mail

<?php
// Dans la ligne qui suit, remplacer webmaster_AT_domaine.tld par l'adresse email du webmaster, à laquelle les messages devront être envoyés
$email_webmaster = "webmaster_AT_domaine.tld";
// === 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["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="Saisissez votre adresse email...";
}
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="Votre adresse e-mail n'est pas valide...";
}
elseif (empty($_POST["message"])) {
// le message est vide
$erreur="Saisissez un message...";
}
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 =======================================================
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xml:lang="fr" lang="fr" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Formulaire de contact</title>
</head>
<body>
<h1>Contacter le webmaster</h1>
<?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 $_SERVER["PHP_SELF"]; ?>">
<p><label for="email_expediteur">Votre adresse e-mail (obligatoire):</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">Titre de message (facultatif):</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="message">Message (obligatoire):</label><br />
<textarea name="message" id="message" cols="40" rows="5"><?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="Envoyer" />
</p>
</form>
<?php
}
else {
// le formulaire a été soumis sans erreur, on envoie le mail
$entete = "From: ".$_POST["email_expediteur"]." <".$_POST["email_expediteur"].">\n";
$entete .= "MIME-Version: 1.0";
if (@mail($email_webmaster,$_POST["titre"],$_POST["message"],$entete)){
// mail envoyé
echo "Votre message a été envoyé.<br />\n";
echo "<a href=\"".$_SERVER["PHP_SELF"]."\">Envoyer un autre message...</a>\n";
}
else {
// erreur lors de l'envoi du mail
echo "Un problème s'est produit lors de l'envoi du message.\n";
echo "<a href=\"".$_SERVER["PHP_SELF"]."\">Réessayez...</a>\n";
}
}
?>
</body>
</html>

Posté

Technics, comme je te l'ai dit si ce n'est pas ton script en l'occurence c'est ton hebergeur qui n'accepte pas cela.

Tu as plein d'autres formulaire de contact dispo sur le net, parfois les hebergeurs propose même des scripts compatible.

Steph.

Posté

Essaye de faire juste un envoi de mail tout simple, sans le formulaire :

<?php mail('ton@email', 'test', 'message'); ?>

Et dis-nous si ça fonctionne.

Juste au cas où : tu as consulté ton dossier "spams" ?

Posté

Les messageries gratuites comme Gmail, hotmail, yahoo mail... ont tendance à envoyer les mails envoyés automatiquement dans le filtre antispam (surtout si les entêtes ne sont pas complets), certains comme Hotmail necessite de travailler sur le spf (enfin je crois que c'est ça)

Posté

Dans ce cas, il va falloir que tu identifies à quel moment de ton script ça coince.

Pour ça, fais un echo (avec un texte différent, bien sûr) après chacune des conditions, tu pourras ainsi situer où le traitement bloque.

Posté

on peut voir si ca part du dédié dans les log mail du server je crois, mais je ne sais plus ou, si quelqu'un peut confirmer ou cela ce trouve

Posté

Bonjour,

Cela fonctionne maintenant.

J'ai modifié ceci dans le code :

<form method="post" action="<?php echo $_SERVER["PHP_SELF"]; ?>">

Dans le action j'ai mis le nom de ma page index_mail.php à la place du <?php etc

Quelqu'un aurait une explication?quel est la difference?

Merci

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...