Erreur php dans un formulaire de contact
sunev
-
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Comment corriger cette erreur
Warning: mail(): "sendmail_from" not set in php.ini or custom "From:" header missing in C:\Program Files\EasyPHP-12.1\www\0000\traitement.php on line 19
mon formulaire
fichier traitement.php
si quelqu'un peut m'aider merci
Comment corriger cette erreur
Warning: mail(): "sendmail_from" not set in php.ini or custom "From:" header missing in C:\Program Files\EasyPHP-12.1\www\0000\traitement.php on line 19
mon formulaire
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>sans titre 1</title>
</head>
<body>
<form method="post" action="traitement.php">
<label>Nom:</label><input type="text" name="nom"/>
<p>Votre email: <span style="color:#ff0000;"></span>: <input type="text" name="email" size="30" /></p>
<p>Message <span style="color:#ff0000;"></span>:</p>
<textarea name="message" cols="60" rows="10"></textarea>
<input type="submit" name="envoyer" value="Envoyer"/>
</form>
</body>
</html>
fichier traitement.php
<?php
if ($_SERVER['REQUEST_METHOD']=='POST') {
$nom = htmlentities($_POST['nom']);
$destinataire = '***@***';
$email = htmlentities($_POST['email']);
$message = htmlentities($_POST['message']);
$sujet = 'Titre du message'; // Titre de l'email
$contenu = '<html><head><title>Titre du message</title></head><body>';
$contenu .= '<p>Bonjour, vous avez reçu un message à partir de votre site web.</p>';
$contenu .= '<p><strong>Nom</strong>: '.$nom.'</p>';
$contenu .= '<p><strong>Email</strong>: '.$email.'</p>';
$contenu .= '<p><strong>Message</strong>: '.$message.'</p>';
$contenu .= '</body></html>';
$headers = 'MIME-Version: 1.0'."\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1'."\r\n";
19 mail($destinataire, $sujet, $contenu, $headers);
echo '<h2>Message envoyé!</h2>';
}
?>
si quelqu'un peut m'aider merci
A voir également:
- Erreur php dans un formulaire de contact
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook - Guide
- Erreur 3005 france tv - Forum TV & Vidéo
- Formulaire de reclamation instagram - Guide
- Formulaire de contact le bon coin introuvable - Forum Réseaux sociaux
1 réponse
Bonjour,
Le message est pourtant clair
... tu n'as pas indiqué de "FROM" dans ton header.
Essaye ce code :
et donc, pour l'utiliser :
NB: Pour pouvoir envoyer des mails depuis un Easyphp, wamp, xampp.... il faut avant tout avoir paramétré le fichier php.ini. (tu trouveras de la doc à ce sujet sur le net ! )
Le message est pourtant clair
Warning: mail(): "sendmail_from" not set in php.ini or custom "From:" header missing in C:\Program Files\EasyPHP-12.1\www\0000\traitement.php on line 19
... tu n'as pas indiqué de "FROM" dans ton header.
Essaye ce code :
function Envoi_Mail($to,$sujet,$message='') { // Creation de l'entete du mail a envoyer // -------------------------------------- $from = 'tonadresseMailparexemple'; // a modifier $boundary = md5(uniqid(microtime(), TRUE)); $headers = "From: $from\r\n"; // FROM ... //$headers .= "Cc: $cc\n"; //pour mettre un destinataire en copie $headers .= 'Mime-Version: 1.0'."\r\n"; $headers .= 'Content-Type: multipart/mixed;boundary='.$boundary."\r\n"; $headers .= "\r\n"; // Creation du message a envoyer // ----------------------------- $msg = '--' . $boundary . "\r\n" . 'Content-type: text/html; charset=utf-8' . "\r\n\r\n <html> <body> $message </body> </html>\r\n"; // Envoi du mail // ------------- return mail($to, $sujet, $msg, $headers); }
et donc, pour l'utiliser :
if ($_SERVER['REQUEST_METHOD']=='POST') { $nom = isset($_POST['nom']) ? htmlentities($_POST['nom']) : ''; $email = isset($_POST['email']) ? htmlentities($_POST['email']) : ''; $message = isset($_POST['message']) ? htmlentities($_POST['message']) : ''; $destinataire = '***@***'; $sujet = 'Titre du message'; // Titre de l'email $contenu = '<p>Bonjour, vous avez reçu un message à partir de votre site web.</p>'; $contenu .= '<p><strong>Nom</strong>: '.$nom.'</p>'; $contenu .= '<p><strong>Email</strong>: '.$email.'</p>'; $contenu .= '<p><strong>Message</strong>: '.$message.'</p>'; if( Envoi_Mail($destinataire,$sujet, $message)){ echo "Message envoyé !"; } }
NB: Pour pouvoir envoyer des mails depuis un Easyphp, wamp, xampp.... il faut avant tout avoir paramétré le fichier php.ini. (tu trouveras de la doc à ce sujet sur le net ! )