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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 &ecirc;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 : Sélectionner tout - Visualiser dans une fenêtre à part
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'&ecirc;tre post&eacute; 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!