Php, formulaire SPAM !

xeroxiss Messages postés 85 Date d'inscription samedi 30 juillet 2005 Statut Membre Dernière intervention 7 mai 2009 - 14 juin 2007 à 17:54
xeroxiss Messages postés 85 Date d'inscription samedi 30 juillet 2005 Statut Membre Dernière intervention 7 mai 2009 - 15 juin 2007 à 12:11
Bonjour,

Voila j'ai un petit soucis...Je voudrait mettre en place un petit formulaire de contact qui ne mange pas de pain..

Donc sans MySQL, (déja parceque je ne connait rien la dedans...), J'ai "créer" un petit formulaire qui marche très bien...

Sauf, il y a un hic, Le message (via fonction mail) s'envoie bien sur l'email prédéfini (donc la mienne) et comme je voulait que la personne
qui l'envoie puisse l'avoir aussi j'ai mit la fonction comuniqué Cc: (ce qui marche et lui envoie le même mail que moi).

Ma question est la suivante, le mail s'envoie mais est considérer comme un "spam" dans les boite de réceptions

Que dois-je faire pour qu'il soit comme un e-mail normal et, voyons les choses en grand il n'y aurai pas moyen d'envoyer sous forme html ce mail ? Ce serait plus jolis, et plus personnalisable. Enfin je veux rester simple donc j'écoutes vos idées Merci

A bientot :

Le code si jamais ^^ :

<?
function check_mail($email) {
if( (preg_match('/(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/', $email)) ||
(preg_match('/^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/',$email)) ) {
$host = explode('@', $email);
if(checkdnsrr($host[1].'.', 'MX') ) return true;
if(checkdnsrr($host[1].'.', 'A') ) return true;
if(checkdnsrr($host[1].'.', 'CNAME') ) return true;
}
return false;
}
$MailTo = "xxx@email.com";
$MailCc = "$email";
$MailSubject = "Contacts sur xxx.com !";
$MailHeader = "$nom";

$Envoi = 1;

if ($nom == ""){
echo("Veuillez compléter le champ ''nom''.
");
$Envoi = 0;
}
else {
$MailBody .= "Nom : $nom\n";
}
if ($email == ""){
echo("Veuillez compléter le champ ''email''.
");
$Envoi = 0;
}
else {
if (check_mail($email)) {
$MailBody .= "E-Mail : $email\n";
}
else {
echo("L'adresse e-mail ne semble pas valide
");
$Envoi = 0;
}
}
if ($sujet == "0"){
echo("Veuillez compléter le champ ''sujet''.
");
$Envoi = 0;
}
else {
$MailBody .= "Sujet : $sujet\n";
}
if ($categorie == ""){
echo("Vous n'avez pas choisi une catégorie dans le menu déroulant.
");
$Envoi = 0;
}
else {
$MailBody .= "Catégorie : $categorie\n";
}
if ($message == ""){
echo("Veuillez compléter la partie ''message''.
");
$Envoi = 0;
}
else {
$MailBody .= "Message : $message\n";
}
if ($Envoi == 0) echo("&nbsp;

&nbsp;

Retour

");

if ($Envoi == 1) {
mail($MailTo, $MailSubject, $MailBody, $MailHeader);
mail($MailCc, $MailSubject, $MailBody, $MailHeader);
echo("Votre message a bien été envoyé.
Merci"); echo("&nbsp;

&nbsp;

Retour

");
}
?>

15 réponses

cs_sebastien_et_typh Messages postés 289 Date d'inscription jeudi 5 octobre 2006 Statut Membre Dernière intervention 11 juin 2010 3
14 juin 2007 à 17:59
tu a mis quoi dans ton php ini pour la fonction mail?
0
xeroxiss Messages postés 85 Date d'inscription samedi 30 juillet 2005 Statut Membre Dernière intervention 7 mai 2009
14 juin 2007 à 18:26
Tout est la....
0
cs_sebastien_et_typh Messages postés 289 Date d'inscription jeudi 5 octobre 2006 Statut Membre Dernière intervention 11 juin 2010 3
14 juin 2007 à 18:28
je parle du send_from dans ton fichier php ini car j'avai ce probleme en mettan une adress msn dedan depui j'ai mis une adress wanadoo tou marche nikel et jutilise phpmailer pour faire des mail ecrit en html
0
xeroxiss Messages postés 85 Date d'inscription samedi 30 juillet 2005 Statut Membre Dernière intervention 7 mai 2009
14 juin 2007 à 18:51
Salut,

Moi je suis débutant, je n'est pas de fichier ini...? Voila mon fichier html...Je n'est que deux fichiers...

Je vais être franc ! Cette réalisation est le fruit de recherche sur des tutos a gauche et a droite...Et ce n'est pas une adresse msn c'est une adresse g-mail..

<form method="POST" action="contact_mail.php3" name="CONTACTS">
Nom :

E-mail

 

Question 5 :

<select name="categorie" size="1">
<option value="5">5</option>
<option value="4">4</option>
<option value="3">3</option>
<option value="2">2</option>
<option value="1">1</option>
</select>

Sujet :

   

Question 6 : commentaire

<textarea rows="4" name="message" cols="40"></textarea>

</td>


</form>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
xeroxiss Messages postés 85 Date d'inscription samedi 30 juillet 2005 Statut Membre Dernière intervention 7 mai 2009
14 juin 2007 à 18:52
Salut,

Moi je suis débutant, je n'est pas de fichier ini...? Voila mon fichier html...Je n'est que deux fichiers...

Je vais être franc ! Cette réalisation est le fruit de recherche sur des tutos a gauche et a droite...Et ce n'est pas une adresse msn c'est une adresse g-mail..

<form method="POST" action="contact_mail.php3" name="CONTACTS">
Nom :

E-mail

 

Question 5 :

<select name="categorie" size="1">
<option value="5">5</option>
<option value="4">4</option>
<option value="3">3</option>
<option value="2">2</option>
<option value="1">1</option>
</select>

Sujet :

   

Question 6 : commentaire

<textarea rows="4" name="message" cols="40"></textarea>

</td>


</form>
0
xeroxiss Messages postés 85 Date d'inscription samedi 30 juillet 2005 Statut Membre Dernière intervention 7 mai 2009
14 juin 2007 à 18:52
Salut,

Moi je suis débutant, je n'est pas de fichier ini...? Voila mon fichier html...Je n'est que deux fichiers...

Je vais être franc ! Cette réalisation est le fruit de recherche sur des tutos a gauche et a droite...Et ce n'est pas une adresse msn c'est une adresse g-mail..

<form method="POST" action="contact_mail.php3" name="CONTACTS">
Nom :

E-mail

 

Question 5 :

<select name="categorie" size="1">
<option value="5">5</option>
<option value="4">4</option>
<option value="3">3</option>
<option value="2">2</option>
<option value="1">1</option>
</select>

Sujet :

   

Question 6 : commentaire

<textarea rows="4" name="message" cols="40"></textarea>

</td>


</form>
0
xeroxiss Messages postés 85 Date d'inscription samedi 30 juillet 2005 Statut Membre Dernière intervention 7 mai 2009
14 juin 2007 à 18:53
Oups désolé pour le flood, probleme de navigateur :s
0
cs_sebastien_et_typh Messages postés 289 Date d'inscription jeudi 5 octobre 2006 Statut Membre Dernière intervention 11 juin 2010 3
14 juin 2007 à 19:28
tu a quel serveur d'installer?
0
xeroxiss Messages postés 85 Date d'inscription samedi 30 juillet 2005 Statut Membre Dernière intervention 7 mai 2009
14 juin 2007 à 20:35
Hein ? la je capte plus !! Sur mon site perso....
0
cs_sebastien_et_typh Messages postés 289 Date d'inscription jeudi 5 octobre 2006 Statut Membre Dernière intervention 11 juin 2010 3
14 juin 2007 à 21:00
tu fais heberger ton site ou tu lheberge toi meme?car si tu l'heberge toi meme tu dois installer un serveur pour interpreter le php
0
xeroxiss Messages postés 85 Date d'inscription samedi 30 juillet 2005 Statut Membre Dernière intervention 7 mai 2009
14 juin 2007 à 22:34
Bon...je crois que je j'explique pas bien...

Mon souhait : Un formulaire simple en php permettant de contacter le webmaster du site...Et si possible reçevant un email a l'utilisateur en format texte ou html le remerçiant ou un petit message. Tout ça sans BDD MySQL svp :)

Mon problème : Tout est parfait, mon fichier html contenant le formulaire est créer et le fichier php incluant la fonction mail est fait. Tous marche, le mail s'envoie mais il se met dans les spams...ou courrier indésirable alors que ca ne l'estt pas !.

Mes infos : Site web héberger sur un serveur normal que je paye sans pub, sans probleme, acceptant la fonction mail.

Merci a vous :) a bientot !

Le code de la page php :

<?
function check_mail($email) {
if( (preg_match('/(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/', $email)) ||
(preg_match('/^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/',$email)) ) {
$host = explode('@', $email);
if(checkdnsrr($host[1].'.', 'MX') ) return true;
if(checkdnsrr($host[1].'.', 'A') ) return true;
if(checkdnsrr($host[1].'.', 'CNAME') ) return true;
}
return false;
}
$MailTo = "xxx@email.com";
$MailCc = "$email";
$MailSubject = "Contacts sur xxx.com !";
$MailHeader = "$nom";

$Envoi = 1;

if ($nom == ""){
echo("Veuillez compléter le champ ''nom''.
");
$Envoi = 0;
}
else {
$MailBody .= "Nom : $nom\n";
}
if ($email == ""){
echo("Veuillez compléter le champ ''email''.
");
$Envoi = 0;
}
else {
if (check_mail($email)) {
$MailBody .= "E-Mail : $email\n";
}
else {
echo("L'adresse e-mail ne semble pas valide
");
$Envoi = 0;
}
}
if ($sujet == "0"){
echo("Veuillez compléter le champ ''sujet''.
");
$Envoi = 0;
}
else {
$MailBody .= "Sujet : $sujet\n";
}
if ($categorie == ""){
echo("Vous n'avez pas choisi une catégorie dans le menu déroulant.
");
$Envoi = 0;
}
else {
$MailBody .= "Catégorie : $categorie\n";
}
if ($message == ""){
echo("Veuillez compléter la partie ''message''.
");
$Envoi = 0;
}
else {
$MailBody .= "Message : $message\n";
}
if
($Envoi == 0)
echo("&nbsp;

&nbsp;

Retour

");

if ($Envoi == 1) {
mail($MailTo, $MailSubject, $MailBody, $MailHeader);
mail($MailCc, $MailSubject, $MailBody, $MailHeader);
echo("Votre
message a bien été envoyé.
Merci");
echo("&nbsp;

&nbsp;

Retour

");
}
?>

Le code HTML :

<form method ="POST" action="contact_mail.php3" name="CONTACTS">
Nom :

E-mail

 

Question 5 :

<select name="categorie" size="1">
<option value="5">5</option>
<option value="4">4</option>
<option value="3">3</option>
<option value="2">2</option>
<option value="1">1</option>
</select>

Sujet :

   

Question 6 : commentaire

<textarea rows="4" name="message" cols="40"></textarea>

</td>


</form>

Pas d'autres fichiers  !
0
cs_sebastien_et_typh Messages postés 289 Date d'inscription jeudi 5 octobre 2006 Statut Membre Dernière intervention 11 juin 2010 3
15 juin 2007 à 00:25
je ne vois pas du tout desoler car moi comme je te l'ai di j'avais eu ce probleme mais ca venai du fait que le fichier php.ini de mon serveur wamp(car jheberge mon site) j'avais mis une adress hotmail depuis que j'ai mis une adress wanadoo tou pass bien essaye peut etre de contacter l'hebergeur de ton site peut etre qu'il sait coment resoudre ton probleme
0
xeroxiss Messages postés 85 Date d'inscription samedi 30 juillet 2005 Statut Membre Dernière intervention 7 mai 2009
15 juin 2007 à 07:26
Ce n'est pas le serveur, je suis certain mon formulaire à été tester sur d'autre serveur tel que netim etc...Donc je ne vois pas bein...

Enfin merci beaucoup quand meme d'avoir essayé de m'aider !
0
cs_sebastien_et_typh Messages postés 289 Date d'inscription jeudi 5 octobre 2006 Statut Membre Dernière intervention 11 juin 2010 3
15 juin 2007 à 08:23
tu a essayer avec la classe phpmailer?
0
xeroxiss Messages postés 85 Date d'inscription samedi 30 juillet 2005 Statut Membre Dernière intervention 7 mai 2009
15 juin 2007 à 12:11
Non plus de probleme ! j'aimerai juste savoir comment envoyé un mail au format html... ?
0