Bien le bonjour !
J’utilise un script assez simple pour l'envoi d'un mail sous Wamp 2.5, PHP 5.5.12.
Cependant il me retourne une erreur assez étrange vu qu'elle ne cible aucune ligne.
Pouvez-vous m'aider ?
Merci,
Cr4shT3st
Bien le bonjour !
J’utilise un script assez simple pour l'envoi d'un mail sous Wamp 2.5, PHP 5.5.12.
Cependant il me retourne une erreur assez étrange vu qu'elle ne cible aucune ligne.
Pouvez-vous m'aider ?
Merci,
Cr4shT3st
Bonjour,
Pour ma part la couleur du texte blanc sur fond blanc, je ne peux que très difficilement le lire...
Tu aurais pu prendre la peine de réécrire le message non?
Et on ne pourra pas t'aider si il n'y a pas de code ou plus d'informations sur le script...
Pensez à regarder nos cours et tutoriels PHP ainsi que notre FAQ PHP avant de poser votre question!
Un message vous a aidé, n'oubliez pas le
Voici mon code:
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 <?php session_start(); /*if(isset($_POST['nom']) && !empty($_POST['nom']) && isset($_POST['email']) && !empty($_POST['email']) && isset($_POST['message']) && !empty($_POST['message'])) {*/ $nom = $_POST['name']; $mailFrom = $_POST['email']; $message = $_POST['message']; $to = 'crashtest111.mr@gmail.com'; // Déclaration de l'adresse de destination. if (!preg_match("#^[a-z0-9._-]+@(hotmail|live|msn).[a-z]{2,4}$#", $mail)) // On filtre les serveurs qui rencontrent des bogues. { $passage_ligne = "\r\n"; } else { $passage_ligne = "\n"; } //=====Déclaration des messages au format texte et au format HTML. $message_txt = $message; //=====Création de la boundary $boundary = "-----=".md5(rand()); //========== //=====Définition du sujet. $sujet = "Contact maximerichet.com"; //========= //=====Création du header de l'e-mail. $header = "From: \"".$nom."\" ".$mailFrom.$passage_ligne; /*$header.= "Reply-to: \"WeaponsB\" <weaponsb@mail.fr>".$passage_ligne;*/ /*$header.= "MIME-Version: 1.0".$passage_ligne;*/ $header.= "Content-Type: multipart/alternative;".$passage_ligne." boundary=\"$boundary\"".$passage_ligne; //========== //=====Création du message. $message = $passage_ligne."--".$boundary.$passage_ligne; //=====Ajout du message au format texte. $message.= "Content-Type: text/plain; charset=\"ISO-8859-1\"".$passage_ligne; $message.= "Content-Transfer-Encoding: 8bit".$passage_ligne; $message.= $passage_ligne.$message_txt.$passage_ligne; //========== /*$message.= $passage_ligne."--".$boundary.$passage_ligne; //=====Ajout du message au format HTML $message.= "Content-Type: text/html; charset=\"ISO-8859-1\"".$passage_ligne; $message.= "Content-Transfer-Encoding: 8bit".$passage_ligne; $message.= $passage_ligne.$message_html.$passage_ligne;*/ //========== $message.= $passage_ligne."--".$boundary."--".$passage_ligne; $message.= $passage_ligne."--".$boundary."--".$passage_ligne; //========== ?> <!-- Page html avec réponse --> <html lang="fr"> <head> <meta charset="UTF-8"> <title>Maxime Richet</title> <link rel="stylesheet" href="css/style.css" type="text/css"/> </head> <body> <header> <a href="#"><h1>Maxime Richet</h1></a> <nav> <ul> <li><a href="index.html">HOME</a></li> <li><a href="works.html">GALLERY</a></li> <li><a href="news.html">NEWS</a></li> <li class="active"><a href="contact.html">CONTACT</a></li> </ul> </nav> </header> <?php if(mail($to, $sujet, $message)) { //Le mail a bien été envoyé echo "<div id=\"envoye\" style=\"center\"><h1>Message envoyé !</h1>"; echo "<p>Redirection...</p></div>"; header ("Refresh: 3;URL=index.html"); //Redirection } else { //Le mail n'a PAS été envoyé ! echo "<div id=\"envoye\" style=\"center\"><h1>Erreur: Message non envoyé !</h1>"; echo "<p>Redirection...</p></div>"; header ("Refresh: 3;URL=contact.html"); //Redirection } ?> </body> </html>
Bonjour,
Je dirais que ce n'est pas un message d'erreur mais le resultat d'une gestion d'erreur obtenu avec un debug_backtrace() ?
Plusieurs choses à voir :
- Vérifier les logs d'erreur dans PHP
- Rechercher un debug_backtrace, ou un gestionnaire d'erreurs dans ton programme
- Affiche les erreurs dans ton script, par exemple avec ini_set('display_errors', '1');
Pour les couleurs je sais que EasyPHP et autres solutions tierces reformattent parfois l'affichage des erreurs pour que ce soit plus lisiblemais il me semble que ça peut se désactiver.
Bonne journée
Etant un jeune con novice en serveurs, je ne pense jamais à regarder les logs...
De ce fait, ce renseignement m'avait échappé:
Effectivement c'était une erreur de variable...Notice: Undefined variable: mail in E:\wamp\www\Portfolio2\message.php on line 9
Désolé pour le dérangement mais comme on dit: C'est en se cassant la gueule qu'on apprend à marcher
Merci beaucoup,
Cr4shT3st
Pense à activer l'affichage des erreurs lorsque tu es en environnement de DEV/TEST :
Et à marquer le sujet comme résolu
Code : Sélectionner tout - Visualiser dans une fenêtre à part ini_set('display_errors','1');
Bonne journée
Partager