Envoi email en php
Résolu
guigui777
Messages postés
75
Date d'inscription
Statut
Membre
Dernière intervention
-
LelLex Messages postés 1628 Date d'inscription Statut Membre Dernière intervention -
LelLex Messages postés 1628 Date d'inscription Statut Membre Dernière intervention -
Bonjour,s'il vous plait j'ai un code php d'envoi d'email qui me casse un peut la tête. Le problème est que il réussi effectivement à envoyer les emails une fois testé sur mon hébergeur mais les parties ou j'ai mis les "echo" pour afficher des valeurs sont vides au moment de la réception.ces valeurs proviennent d'un formulaire banale apparemment sans erreur. Voici mon code source en espérant que j'ai été compréhensible.:
<?php
include("connection.php");
if (isset($_POST['nom']) AND isset($_POST['titre']) AND isset($_POST['filiere']) AND isset($_POST['message'])) // Si les variables existent
{
if ($_POST['nom'] != NULL AND $_POST['titre'] != NULL AND $_POST['filiere'] != NULL AND $_POST['message'] != NULL) // Si on a quelque chose à enregistrer
{
// On utilise les fonctions PHP mysql_real_escape_string et htmlspecialchars pour la sécurité. On stocke dabord les differentes données écrites sans les mettre à la BDD
$nom = mysql_real_escape_string(htmlspecialchars($_POST['nom']));
$titre = mysql_real_escape_string(htmlspecialchars($_POST['titre']));
$filiere = mysql_real_escape_string(htmlspecialchars($_POST['filiere']));
$message = mysql_real_escape_string(htmlspecialchars($_POST['message']));
}
}
// Maintenant on doit récupérer les 10 dernières entrées de la table
// On utilise la requête suivante pour prendre les emails,les noms des étudiants et leur filièere
$reponse = mysql_query("SELECT * FROM lettre");
// On se déconnecte de MySQL
mysql_close();
// Puis on fait une boucle pour afficher tous les résultats :
while ($donnees = mysql_fetch_array($reponse) )
{
// Fin de la boucle, le sc
// Variables
$to=$donnees['email'];
$from="From:monemail@gmail.com\r\n";
$from.="MIME-Version: 1.0\r\n";
$from.="Content-Type: text/html; charset=fr-ascii\r\n";
$sujet=$titre;
$message1="<html> <h3><?php echo $sujet; ?> Pour la filière <?php echo $filiere; ?></h3><br>
<?php echo $message; ?><br>
Envoyer par Dr <?php echo $nom; ?><br><br><br>
Ce message est envoyé à tous ceux qui se sont inscrits au site Scienciz.<br>
Veillez ne pas répondre à ce message.<br>
Merci!</html>";
//appel de la fonction mail (envoi)
$resultat = mail($to,$sujet,$message1,$from);
}
if($resultat)
{
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="content-type">
<title></title>
</head>
<body>
<br>
<div
style="position: absolute; top: 216px; left: 275px; font-family: Arial;"><img
style="width: 202px; height: 114px;" alt="guiguiz"
title="guiguiz"
src="image/logoofficiel.jpg">Message
envoyé avec succès. <a href="professeur.php">Cliquez ici
pour revenir à votre page</a></div>
</body>
</html>
<?php
}
?>
<?php
include("connection.php");
if (isset($_POST['nom']) AND isset($_POST['titre']) AND isset($_POST['filiere']) AND isset($_POST['message'])) // Si les variables existent
{
if ($_POST['nom'] != NULL AND $_POST['titre'] != NULL AND $_POST['filiere'] != NULL AND $_POST['message'] != NULL) // Si on a quelque chose à enregistrer
{
// On utilise les fonctions PHP mysql_real_escape_string et htmlspecialchars pour la sécurité. On stocke dabord les differentes données écrites sans les mettre à la BDD
$nom = mysql_real_escape_string(htmlspecialchars($_POST['nom']));
$titre = mysql_real_escape_string(htmlspecialchars($_POST['titre']));
$filiere = mysql_real_escape_string(htmlspecialchars($_POST['filiere']));
$message = mysql_real_escape_string(htmlspecialchars($_POST['message']));
}
}
// Maintenant on doit récupérer les 10 dernières entrées de la table
// On utilise la requête suivante pour prendre les emails,les noms des étudiants et leur filièere
$reponse = mysql_query("SELECT * FROM lettre");
// On se déconnecte de MySQL
mysql_close();
// Puis on fait une boucle pour afficher tous les résultats :
while ($donnees = mysql_fetch_array($reponse) )
{
// Fin de la boucle, le sc
// Variables
$to=$donnees['email'];
$from="From:monemail@gmail.com\r\n";
$from.="MIME-Version: 1.0\r\n";
$from.="Content-Type: text/html; charset=fr-ascii\r\n";
$sujet=$titre;
$message1="<html> <h3><?php echo $sujet; ?> Pour la filière <?php echo $filiere; ?></h3><br>
<?php echo $message; ?><br>
Envoyer par Dr <?php echo $nom; ?><br><br><br>
Ce message est envoyé à tous ceux qui se sont inscrits au site Scienciz.<br>
Veillez ne pas répondre à ce message.<br>
Merci!</html>";
//appel de la fonction mail (envoi)
$resultat = mail($to,$sujet,$message1,$from);
}
if($resultat)
{
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="content-type">
<title></title>
</head>
<body>
<br>
<div
style="position: absolute; top: 216px; left: 275px; font-family: Arial;"><img
style="width: 202px; height: 114px;" alt="guiguiz"
title="guiguiz"
src="image/logoofficiel.jpg">Message
envoyé avec succès. <a href="professeur.php">Cliquez ici
pour revenir à votre page</a></div>
</body>
</html>
<?php
}
?>
A voir également:
- Envoi email en php
- Comment creer un compte email - Guide
- Easy php - Télécharger - Divers Web & Internet
- Votre envoi est en préparation pour sa distribution. ✓ - Forum Consommation & Internet
- Programmer envoi sms - Guide
- Votre envoi est en cours de transport vers son site de livraison - Forum Consommation & Internet
5 réponses
$message1="<html> <h3><?php echo $sujet; ?> Pour la filière <?php echo $filiere; ?></h3><br> <?php echo $message; ?><br> Envoyer par Dr <?php echo $nom; ?><br><br><br> Ce message est envoyé à tous ceux qui se sont inscrits au site Scienciz.<br> Veillez ne pas répondre à ce message.<br> Merci!</html>";
Biensûr, du PHP dans un echo en PHP ... tu peux être sûr qu'il ne sera pas exécuter.
Utilise la concatenation :
$message1 = '<html><h3>'.$sujet.' Pour la filière '.$filiere.'</h3><br/>'.$message.'<br/> Envoyer par Dr '.$nom.'<br/><br/><br/> Ce message est envoyé à tous ceux qui se sont inscrits au site Scienciz.<br> Veillez ne pas répondre à ce message.<br> Merci!</html>';
Avant la ligne
$resultat = mail($to,$sujet,$message1,$from);
Fais un echo de chaque variable et dis ce que ca te renvoie !
$resultat = mail($to,$sujet,$message1,$from);
Fais un echo de chaque variable et dis ce que ca te renvoie !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question