Problème fontion mail()
- Accueil
- Forum
- Programmation
- PHP
- Problème fontion mail()
paulbarbarin Le 2 avril 2017 à 10:41 (Édité le 25 janvier 2019 à 17:53)
<?php
$header ="MIME-Version: 1.0\r\n";
$header.='From: "Cyberastuces.com"<no-reply@cyberastuces.com>'."\n";
$header.='Content-Type:text/html; charset="utf-8"'."\n";
$header.='Content-Transfer-Encoding: 8bit';
$message = '
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="urn:shemas-microsoft-com:vml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0">
<link href="https://fonts.googleapis.com/css?family=Questrial,Arial" rel="stylesheet">
</head>
<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<table bgcolor="#ecf0f1" width="75%" border="0" cellpadding="0" cellspacing="0" align="center" style="position:relative">
<tbody>
<tr>
<td>
<table width="100%" border="0" cellpadding="10" cellspacing="0" align="center">
<tbody>
<tr>
<td height="0" style="font-size:0px;line-height:0px" bgcolor="#34495e"> <img src="https://www.cyberastuces.com/KeepCode/logo_mail.JPG" style="height:40px;position:absolute;top:0px;left:20px"></td>
</tr>
<tr>
<td height="30" style="font-size:30px;line-height:30px"> </td>
</tr>
<tr>
<td style="font-family:\'Questrial\',Arial,sans-serif;line-height:20px">'.$_POST['corps_message1'].'</td>
</tr>
<tr>
<td height="30" style="font-size:30px;line-height:30px"> </td>
</tr>
<tr>
<td style="font-family:\'Questrial\',Arial,sans-serif;line-height:20px">'.$_POST['corps_message2'].'</td>
</tr>
<tr>
<td height="30" style="font-size:30px;line-height:30px"> </td>
</tr>
<tr>
<td height="30" style="font-size:30px;line-height:30px"> </td>
</tr>
<tr>
<td style="font-family:\'Questrial\',Arial,sans-serif;line-height:20px">Paul Barbarin, Cyberastuces KeepCode</td>
</tr>
<tr>
<td height="30" style="font-size:30px;line-height:30px"> </td>
</tr>
<tr>
<td height="30" style="font-size:30px;line-height:30px"> </td>
</tr>
</tbody>
</table>
<table width="100%" border="0" cellpadding="10" cellspacing="0" align="center" bgcolor="#34495e">
<tbody>
<tr>
<td height="30" style="font-size:30px;line-height:30px"> </td>
</tr>
<tr>
<td style="font-family:\'Questrial\',Arial,sans-serif;line-height:20px" align="center">
<img src="https://www.cyberastuces.com/data/images/avatars/1.png" height="100px">
</td>
</tr>
<tr>
<td height="10" style="font-size:10px;line-height:10px"> </td>
</tr>
<tr>
<td align="center" style="font-family:\'Questrial\',Arial,sans-serif;color:white;text-transform:uppercase;font-weight:bold;font-size:20px">Cyberastuces KeepCode</td>
</tr>
<tr>
<td height="10" style="font-size:10px;line-height:10px"> </td>
</tr>
<tr>
<td style="font-family:\'Questrial\',Arial,sans-serif;line-height:20px;color:#7f8c8d;" align="center">Cyberastuces est un site internet proposant des tutoriels de programmation afin de créer votre site web. KeepCode est une sous marque de Cyberastuces proposant une création de sites web pour pas cher
</td>
</tr>
<tr>
<td height="30" style="font-size:30px;line-height:30px"> </td>
</tr>
</tbody>
</table>
<table width="100%" border="0" cellpadding="10" cellspacing="0" align="center" bgcolor="#2c3e50">
<tbody>
<tr align="center">
<td height="15" style="font-size:15px;line-height:15px">
<a href="https://www.cyberastuces.com/KeepCode" style="text-decoration:none;color:#16a085;font-family:\'Questrial\',Arial,sans-serif;text-align:center">Copyright Cyberastuces KeepCode</a>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
</body>
</html>';
mail($_POST['dest_mail'], $_POST['subject_mail'], $message, $header);
header('location:admin.php?page=send_email&error=Envoyé');
?>
Balatharas Le 2 avril 2017 à 12:06 (Édité le 1 janvier 1970 à 01:00)
Si tu met ton site en ligne tu verras normalement que ton script marche parfaitement 😉
paulbarbarin Le 2 avril 2017 à 12:20 (Édité le 1 janvier 1970 à 01:00)
Zbuu Le 2 avril 2017 à 12:35 (Édité le 1 janvier 1970 à 01:00)
Ce n'est pas ton code qui est défaillant c'est au niveau de wamp que ca merde.Il n'est pas obligatoire de mettre un site en ligne pour utiliser la fonction mail de php, il suffit de bien configurer le php.ini 😉
Si tu met ton site en ligne tu verras normalement que ton script marche parfaitement
Sinon @Nauzan173 est ce que tu as des erreurs ?
paulbarbarin Le 2 avril 2017 à 13:18 (Édité le 1 janvier 1970 à 01:00)
Balatharas Le 3 avril 2017 à 18:23 (Édité le 1 janvier 1970 à 01:00)
Il n'est pas obligatoire de mettre un site en ligne pour utiliser la fonction mail de php, il suffit de bien configurer le php.iniJe dis ça parce qu'en fait j'ai un code pour envoyer des mails. La première fois que je me suis servi de l'envoi de mail de wamp, ça fonctionnait, pis un jour, bah erreur adresse machin 😋
jad Le 24 mai 2017 à 08:22 (Édité le 1 janvier 1970 à 01:00)
j'ai suivis le TUTO PHP - ENVOYER DES MAILS de primfx , je n'ai aps d'erreur la page reste blanche sans mais au niveau du favicon ça ne charge pas ( donc le mail n'est pas envoyer)
Balatharas Le 24 mai 2017 à 14:18 (Édité le 1 janvier 1970 à 01:00)
Si tu as une page blanche, c'est que les erreurs PHP ne s'affiche pas. Voici un cod qui le permet:
<?php // Dans ton fichier de connexion a la bdd
error_reporting(E_ALL);
ini_set('display_errors', '1');
try {
// Ligne de connexion ($bdd = newPDO('...');)
} catch (Exception $e) {
die('Erreur: ' . $e->getMessage());
}
$bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
$bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
jad Le 24 mai 2017 à 15:23 (Édité le 1 janvier 1970 à 01:00)
et pour ma seconde quéstion ? je boss avec wampserver, en local , mon site n'est donc pas en ligne, alors les mails peuvent quand même s'envoyer ?
jad Le 24 mai 2017 à 19:53 (Édité le 1 janvier 1970 à 01:00)
<?php
error_reporting(E_ALL);
ini_set('display_errors', '1');
try {
$bdd = new PDO('mysql:host=127.0.0.1;dbname=espace_membre', 'root', '');
// Ligne de connexion ($bdd = newPDO('...');)
} catch (Exception $e) {
die('Erreur: ' . $e->getMessage());
}
$bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
$bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$to = "dieunel.delmas@hotmail.com";
$subject = "didou vous a contacté";
$message = "
<html>
<head>
<title> contact </title>
<style>
body
{
background-color: red;
width: 800px;
}
p
{
color: black;
}
</style>
</head>
<body>
<h1>bonjour,</h1>
<p> je teste le mail en php pas mal </p><br />
</body>
</html>
";
$headers= "MIME-Version :1.0"."\r\n";
$headers.= "Content-type:text/html; charset='utf8'";
mail($to,$subject,$message,$headers);
?>
ChJacquot Le 10 août 2017 à 20:59 (Édité le 1 janvier 1970 à 01:00)
<?php
require('phpmailer/class.phpmailer.php');
if(isset($_POST['mailform']))
{
if(!empty($_POST['nom']) AND ($_POST['mail']) AND ($_POST['message'])){
$nom = htmlspecialchars($_POST['nom']);
$maildest = htmlspecialchars($_POST['mail']);
$message = htmlspecialchars($_POST['message']);
// Instanciation de PHPMailer
$mail = new PHPMailer();
// Initialisation
$mail->Host = 'smtp.ozone.net'; // mon serveur SMTP
$mail->SMTPAuth = true;
$mail->Port = 587;
// Authentification
$mail->Username = "********"; // votre identifiant FAI
$mail->Password = "*******"; // votre mot de passe FAI
// envoi du mail au format html
$mail->IsHTML(true);
// Définition de l'encodage
$mail->CharSet = 'UTF-8';
// Expéditeur
$mail->SetFrom($maildest, $nom);
// Destinataire
$mail->AddAddress('********@ozone.net', 'Nom Prénom');
// Ajout des images
$mail->AddEmbeddedImage('mailing/banniere.png','ma_banniere', 'banniere.png');
$mail->AddEmbeddedImage('mailing/separation.png','ma_separation', 'separation.png');
// Objet
$mail->Subject = 'Envoi de message';
// Votre message
$mail->MsgHTML('<!DOCTYPE html>
<html>
<head>
<title>TUTO PHP</title>
<meta charset="utf-8">
</head>
<body>
<div align="Center">
<img width="500px" height="60px" src="cid:ma_banniere" alt="banniere" />
<br /><br />
<table>
<tr>
<td align="right"><u>Pseudo de l\'expéditeur :</u></td><td>'.$_POST['nom'].'</td>
</tr>
<tr>
<td align="right"><u>Email de l\'expéditeur :</u></td><td>'.$_POST['mail'].'</td>
</tr>
</table>
<br />
'.nl2br($_POST['message']).'
<br /><br />
<img src="cid:ma_separation" alt="separation width="100px" height="30px" />
</div>
</body>
<html>');
// Envoi du mail avec gestion des erreurs
if(!$mail->Send()) {
echo 'Erreur : ' . $mail->ErrorInfo;
} else {
header("Location: index.php");
//echo 'Message envoyé !';
}
}
else{
$erreur = "Veuillez remplir tous les champs !";
}
}
?>
<html>
<head>
<meta charset="utf-8" />
<style>
fieldset
{
background-color:#CCC;max-width:150px;padding:16px;border:2px solid green;
-moz-border-radius:8px;-webkit-border-radius:8px;border-radius:8px;
}
legend{color:green;}
div.centre {
position:absolute;left: 50%;top: 50%;width: 200px;height: 200px;
margin-left: -200px; /* Cette valeur doit être la moitié négative de la valeur du width */
margin-top: -200px; /* Cette valeur doit être la moitié négative de la valeur du height */
}
</style>
</head>
<body>
<div class="centre">
<fieldset>
<legend>Formulaire de contact</legend>
<form method="POST" action="">
<input type="text" name="nom" placeholder="Votre nom" value="<?php if(isset($_POST['nom'])){ echo $_POST['nom'];}?>" /><br /><br />
<input type="email" name="mail" placeholder="Votre Email" value="<?php if(isset($_POST['mail'])){ echo $_POST['mail'];}?>" /><br /><br />
<textarea name="message" placeholder="Votre message" rows="10" cols="50" ><?php if(isset($_POST['message'])){ echo $_POST['massage'];}?></textarea><br /><br />
<input type="submit" value="Envoyer" name="mailform" width="100px">
</form>
<a href="index.php">Retour à l'accueil</a>
</fieldset>
</div>
<?php
if(isset($msg)){
echo '<span style="color:red">'.$erreur.'</span>';
} else{
echo "<br />";
}
?>
</body>
</html>