> Tous les forums > Forum Forum des Webmasters
 Pas de mail recu avec formulaire html et phpSujet résolu
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
Claudie972
  Posté le 27/02/2012 @ 22:40 
Aller en bas de la page 
Nouvelle astucienne

j'envoie un mail par l'intermediaire d'un formulaire, ma page succes.html arrive bien pourtant je ne recois pas le mail. je ne trouve pas mon erreur, si quelqu'un pouvait m'aider ce serait vraiment sympa !

mon code html

<h2>Contactez-nous</h2>

<div id="contact_form">

<form id="form2" method="post" action="scripts/email.php">

<fieldset> <input id="con_name" name="con_name" value="Nom:" alt="" type="text" /><br />

<input id="con_email" name="con_email" value="E-mail:" alt="" type="text" /><br /> <input id="con_website" name="con_website" value="Sujet:" alt="" type="text" /><br />

<textarea id="con_mess" name="con_mess" cols="0" rows="0">Message:</textarea><br />

<input id="contact-submit" value="Valider" type="submit" />

<input id="contact-clear" value="Annuler" type="button" /> </fieldset> </form> </div>

Mon fichier email.php

<?php

require("config.inc.php");

if(isset($_POST['con_email']) && isset($_POST['con_name']) && isset($_POST['con_mess'])) { $headers = "From: ".$_POST['con_name']."<".$_POST['con_email'].">\r\n"; $headers .= "X-Sender: ".$_POST['con_email']."\r\n"; $headers .= "X-Mailer: PHP/".phpversion()."\r\n"; $headers .= "X-Priority: 2\r\n"; $headers .= "Return-Path: ".$_POST['con_email']."\r\n"; $headers .= "MIME-Version: 1.0\r\n"; $headers .= "Content-Type: text/plain; charset=\"US-ASCII\"\r\n"; $headers .= "Content-Transfer-Encoding: 7bit\r\n";

if(mail($to, $titre, $_POST['con_mess'], $headers)) { header("Location:../".$lienOK); } else { header("Location:../".$lienPasOK); } } else { header("Location:../".$lienPasOK); } ?>

mon fichier config.inc.php

<?php /* Inserer ici votre courriel */ $to = "sosanimauxdecompagnie@gmail.fr";

/* Inserer ici le titre quand on vous envoie un message */ $titre = "Contact SOS ANIMAUX DE COMPAGNIE";

/* Inserer ici le nom de la page lorsque le message a été envoyé avec succès */ $lienOK = "succes.html";

/* Inserer ici le nom de la page lorsque le message n'a pas été envoyé avec succès */ $lienPasOK = "echec.html";

?>

Voila je recois bien le message successful de la pagesucces.html pourtant je ne recois pas le mail !!!

Publicité
y.bli
 Posté le 28/02/2012 à 11:57 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

Bonjour,

Peux-tu faire l'essai de remplacer le code de ta page email.php par celui ci-dessous :

___________________________________________

<?php

$to = "sosanimauxdecompagnie@gmail.fr";
$titre = "Contact SOS ANIMAUX DE COMPAGNIE";

mail($to, $titre, $_POST['con_mess'], $headers);

?>

____________________________________________

évidemment tu conserves la page précédente et tu fais un essai d'envoi

@+

Claudie972
 Posté le 28/02/2012 à 13:03 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Nouvelle astucienne

J'ai modifié comme tu l'as dit (enore merci de m'aider) et du coup j'ai un message d'erreur :

Notice: Undefined variable: headers in /homez.517/sosanima/www/scripts/email.php on line 6

si je supprime le $header cela fonctionne donc c'est dans la récup des headers que j'ai merdu ?

y.bli
 Posté le 28/02/2012 à 13:54 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

Avant la commande mail, ajoute la ligne :

$headers = "From: site machintruc <sosanimauxdecompagnie@gmail.fr>";

je fais l'essai du plus simple au plus compliqué, de toutes façons, tu avais un if qui n'était pas fermé

@+




Modifié par y.bli le 28/02/2012 13:57
y.bli
 Posté le 28/02/2012 à 13:59 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

le premier if

je ne corrige pas mes messages précédents pour qu'ils ne soient pas interprétés par le forum...

@+

Claudie972
 Posté le 28/02/2012 à 14:01 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Nouvelle astucienne

non cela ne fonctionne pas, j'ai vraiment un problème ave mes headers mais je ne vois pas ou ...

si je les enlève cela fonctionne

y.bli
 Posté le 28/02/2012 à 14:10 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien
Claudie972 a écrit :

non cela ne fonctionne pas, j'ai vraiment un problème ave mes headers mais je ne vois pas ou ...

si je les enlève cela fonctionne

tu as essayé en fermant le dernier if ?

à la fin de la ligne .....$headers .= "Content-Transfer-Encoding: 7bit\r\n"; }

@+

Claudie972
 Posté le 28/02/2012 à 14:10 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Nouvelle astucienne

Donc je confirme si j'envoie $headers je ne recois rien, si je l'enlève de ma ligne mail, je recois le message !!! ?????

Claudie972
 Posté le 28/02/2012 à 14:18 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Nouvelle astucienne

Si je ferme avec } là ou tu me l'indique il me fait une erreur de synthaxe sur la ligne, le dernier if est fermé devant le dernier else, tu penses que je le ferme au mauvais endroit ?

Publicité
y.bli
 Posté le 28/02/2012 à 14:30 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien
Claudie972 a écrit :

Si je ferme avec } là ou tu me l'indique il me fait une erreur de synthaxe sur la ligne, le dernier if est fermé devant le dernier else, tu penses que je le ferme au mauvais endroit ?

ah oui j'avais lu rapidement, mais présenté comme ça sans passer à la ligne pas facile à lire...

mets tes variable headers sur des lignes différentes pour voir où ça coince



Modifié par y.bli le 28/02/2012 14:31
Claudie972
 Posté le 28/02/2012 à 14:30 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Nouvelle astucienne

Oui effectivement je ne le ferme pas, j'ai donc essayé en refermant en dernière ligne toujours même résultat (pas de reception de mail !)!

Ce qui est surprenant c'est que j'utilise exactement les mêmes scripts sur un autre site et cela fonctionne très bien ! J'ai juste changé le nom de mes variables !!! Cela fait une semaine que je suis là dessus et là franchement je n'y comprends rien !

Claudie972
 Posté le 28/02/2012 à 14:38 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Nouvelle astucienne

Oui excuse moi je demande de l'aide et je mets mon script en vrac

<?php

require("config.inc.php");

if(isset($_POST['con_email']) && isset($_POST['con_name']) && isset($_POST['con_mess']))

{ $headers = "From: ".$_POST['con_email'].">\r\n";

$headers .= "X-Sender: ".$_POST['con_email']."\r\n";

$headers .= "X-Mailer: PHP/".phpversion()."\r\n";

$headers .= "X-Priority: 2\r\n";

$headers .= "Return-Path: ".$_POST['con_email']."\r\n";

$headers .= "MIME-Version: 1.0\r\n";

$headers .= "Content-Type: text/plain; charset=\"US-ASCII\"\r\n";

$headers .= "Content-Transfer-Encoding: 7bit\r\n";

if(mail($to, $titre, $_POST['con_mess'], $headers)) { header("Location:../".$lienOK); }

else { header("Location:../".$lienPasOK); } }

else { header("Location:../".$lienPasOK); } ?>

voilà j'espère que c'est plus facile à étudier, je confirme que si je laisse mon script tel quel en retirant $headers dans la commande mail tout fonctionne ok je recois le mail

y.bli
 Posté le 28/02/2012 à 14:54 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

j'ai fait un essai de ton code sur un de mes sites et les headers fonctionnent...

je dois partir maintenant, je verrai plus tard si tu n'as pas trouvé d'ici là...

@+

Claudie972
 Posté le 28/02/2012 à 14:54 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Nouvelle astucienne

Alors j'ai réécris mon email.php à la main et cela fonctionne, en faisant mon copié collé j'ai dû intégrer un caractère quelconque que le serveur n'aimait pas du tout donc tout est ok

Merci de ton aide

y.bli
 Posté le 28/02/2012 à 19:57 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien
Claudie972 a écrit :

Alors j'ai réécris mon email.php à la main et cela fonctionne, en faisant mon copié collé j'ai dû intégrer un caractère quelconque que le serveur n'aimait pas du tout donc tout est ok

Merci de ton aide

C'est bien, merci pour le retour d'info

@+

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour poster des messages. Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !


Sujets relatifs
Formulaire & Pièce Jointe par Mail (HTML/Php)
Help Malcom : formulaire mail php avec copie caché
Formulaire HTML avec DreamWeaver CS3
formulaire avec adresse mail à saisir
Formulaire d'inscription avec confirmation mail
problème formulaire par mail avec FREE
formulaire mail avec plusieurs contacts
Codage HTML dans Dreamweaver avec une template Photoshop
Formulaire qui ne fonctionne pas avec Joomla
Envoi checkbox par mail dans formulaire php
Plus de sujets relatifs à Pas de mail recu avec formulaire html et php
 > Tous les forums > Forum Forum des Webmasters