[Mail] Envoi d'un mail en php
Bonjour.
J'ai un souci d'envoi de mail quand on valide mon formulaire.
Pourtant avant ça marchait donc mon hébergeur (free) a bien activé cette fonction. J'ai essayé pas mal de manip mais rien de donne.
J'ai sans doute une erreur dans mon code mais je la trouve pas.
Voici mon code qui ajoute les info du formulaire dans ma base de donnée:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107
| <?php
include("configuration.php");
include("mails.php");
function VerifierAdresseMail($email)
{
$Syntaxe='#^[\w.-]+@[\w.-]+\.[a-zA-Z]{2,5}$#';
if(preg_match($Syntaxe,$email))
return true;
else
return false;
}
$envoyer = $_POST['envoyer'];
$pseudo = $_POST['pseudo'];
$email = $_POST['email'];
$ville = $_POST['ville'];
$pays = $_POST['pays'];
$note = $_POST['note'];
$message = $_POST['message'];
$robot = $_POST['humain'];
if ( $envoyer != "" )
{
if ( $pseudo != "" )
{
if ( $email != "" )
{
if (VerifierAdresseMail($email))
{
if ( $ville != "" )
{
if ( $message != "" )
{
if ( $robot != "" )
{
if( mail($destinataire_livre_dor,$titremail_livre_dor,$message_livre_dor) )
{
if ( mail($destinataire_livre_dor_2,$titremail_livre_dor_2,$message_livre_dor_2) ) {
echo "
Votre Message a bien été ajouté au Livre d'Or.<br/ > Merci <br/ ><br/ > Vous allez recevoir dans quelques instant un email résumant votre message.<br/ ><br/ > <a href=\"livre_dor.php\">Retour au livre d'Or</a>";
// on se connect à la base de donnée
mysql_connect("$db_host", "$db_login", "$db_pass");
// on se connect à notre base créé
mysql_select_db("$db_name");
$date = date('Y-m-d H:i:s');
// requête sql
$sql = mysql_query("INSERT INTO $db_table_2 (id, pseudo, email, ville, pays, note, message) VALUES ('','$pseudo','$email','$ville','$pays','$note','$message')") or die ("erreur de connexion");
// requête sql pour ne pas avoir la même adresse plusieurs fois dans la table email
$sql = mysql_query("SELECT email from $db_table_email where email = '$email'");
if(mysql_num_rows($sql) == 0)
{
$req_email = mysql_query("INSERT INTO $db_table_email (email) VALUES ('$email')") or die ("erreur de connexion"); // requete d'insertion
}
} else {}
}
else { echo "
Une erreur c'est produite pendant l'ajout de votre Message dans le Livre d'Or.<br/ >
<a href=\"javascript:history.back()\">Retour au formulaire</a>"; }
}
else
{
echo "Les robots et demi-robots ne peuvent remplir ce formulaire.<br />
Et si vous ne savez pas qui vous êtes, je n'y peut rien ;)<br /><br />
<a href=\"javascript:history.back()\">Retour au formulaire</a>"; }
}
else
{
echo "Vous n'avez pas saisie votre Message <br/ > <br/ >
<a href=\"javascript:history.back()\">Retour au formulaire</a>"; }
}
else
{
echo "Vous n'avez pas saisie votre Département de résidence <br/ > <br/ >
<a href=\"javascript:history.back()\">Retour au formulaire</a>"; }
}
else
{
echo "Votre E.mail n'est pas valide <br/ > <br/ >
<a href=\"javascript:history.back()\">Retour au formulaire</a>"; }
}
else
{
echo "Vous n'avez pas saisie votre E.mail <br/ > <br/ >
<a href=\"javascript:history.back()\">Retour au formulaire</a>"; }
}
else
{
echo "Vous n'avez pas saisie votre Pseudo / Nom <br/ > <br/ >
<a href=\"javascript:history.back()\">Retour au formulaire</a>"; }
}
else
{
echo "Le formulaire n'a pas été transmit <br/ > <br/ >
<a href=\"javascript:history.back()\">Retour au formulaire</a>"; }
?> |
Voici mon code dans mails.php:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| <?php
// contenu du mail Livre d'or qui m'est envoyé
$destinataire_livre_dor = "mail@hotmail.fr";
$titremail_livre_dor = "Ajout d'un message dans le Livre d'Or";
$message_livre_dor =
"Un nouveau Message vient d'être posté dans le Livre d'Or \n\n\n".
"Pseudo / Nom:" .$pseudo."\n\n".
"E.mail:" .$email."\n\n".
"Pays de résidence:" .$pays."\n\n".
"Note:" .$note."\n\n".
"Message:" .$message;
// contenu du mail Livre d'Or envoyé à l'auteur
$destinataire_livre_dor_2 = "$email";
$titremail_livre_dor_2 = "Ajout de votre message dans le Livre d'Or";
$message_livre_dor_2 =
"Bonjour \n\n".
"Vous recevez ce mail car vous venez d'ajouter un message dans le Livre d'Or. \n\n\n".
"Voici vos informations: \n\n".
"Pseudo / Nom:" .$pseudo."\n\n".
"E.mail:" .$email."\n\n".
"Pays de résidence:" .$pays."\n\n".
"Note:" .$note."\n\n".
"Message:" .$message."\n\n".;
?> |
Merci pour votre aide.
PS: j'accepte volontiers vos conseils sur mon code!