Erreur php dans un formulaire de contact
sunev
-
jordane45 Messages postés 40050 Statut Modérateur -
jordane45 Messages postés 40050 Statut Modérateur -
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 compte désactivé - Guide
- Formulaire de contact le bon coin introuvable - Forum Réseaux sociaux
- Formulaire de reclamation instagram - Guide
- Erreur 3005 france tv - Forum TV & Vidéo
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 ! )