Phpmailer
Résolu/Fermé
little_programmeur
Messages postés
54
Date d'inscription
mercredi 28 janvier 2009
Statut
Membre
Dernière intervention
27 juin 2019
-
25 mai 2009 à 13:50
Nabla's Messages postés 18203 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 - 28 mai 2009 à 11:56
Nabla's Messages postés 18203 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 - 28 mai 2009 à 11:56
A voir également:
- Perso-6;available playsets were found, but none are supported;undefined
- PHP, if/else empeche PHPMailer : pourquoi....? - Forum PHP
12 réponses
little_programmeur
Messages postés
54
Date d'inscription
mercredi 28 janvier 2009
Statut
Membre
Dernière intervention
27 juin 2019
4
26 mai 2009 à 17:56
26 mai 2009 à 17:56
Je vois ce que tu veux dire. Merci. J'ai cependant une dernière question : comment faire pour que le message soit envoyé en format html ? Lorsque je tape ceci :
$msg = '<h1>Demande de partition</h1><p><strong>Adresse mail de l\'expéditeur : </strong>';
$msg .= stripslashes(htmlspecialchars($_POST['mail']));
$msg .= '<br /><strong>Titre de la partition : </strong>';
$msg .= stripslashes(htmlspecialchars($_POST['titre']));
$msg .= '<br /><strong>Compositeur : </strong>';
$msg .= stripslashes(htmlspecialchars($_POST['compositeur']));
$msg .= '<br /><strong>Instruments : </strong>';
$msg .= implode(', ', $_POST["instrument"]);
$msg .= '<br /><strong>Autres instruments : </strong>';
$msg .= stripslashes(htmlspecialchars($_POST['autre']));
$msg .= '<br /><strong>Notes : </strong>';
$msg .= nl2br(stripslashes(htmlspecialchars($_POST['notes'])));
require "phpmailer/class.phpmailer.php";
$mail = new PHPMailer();
$mail->IsSMTP(); // telling the class to use SMTP
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Host = "smtp.laposte.net"; // SMTP server
$mail->Username = "sites.web";
$mail->Password = "gfd";
$mail->From = "sites.web@laposte.net";
$mail->AddAddress("tbtous@gmail.com");
$mail->Subject = "First PHPMailer Message";
$mail->Body = $msg;
$mail->AddAttachment('uploads/'.$_FILES['monfichier']['name'].'');
$mail->WordWrap = 50;
if(!$mail->Send())
{
echo 'Le message n\'a pas pu être envoyé';
echo 'Erreur Mailer : ' . $mail->ErrorInfo;
}
else
{
echo 'Félicitation ! Le message à bien été envoyé. Vous recevrez la partition finale dans une semaine à un mois.';
}
J'ai le message suivant qui apparait lorsque j'ouvre mon message :
<h1>Demande de partition</h1><p><strong>Adresse
mail de l'expéditeur : </strong>d<br
/><strong>Titre de la partition : </strong>d<br
/><strong>Compositeur : </strong>d<br
/><strong>Instruments :
</strong>guitareseche_accords<br /><strong>Autres
instruments : </strong>h<br /><strong>Notes :
</strong>Si vous voulez indiquer quelque chose de
spécial, c'est ici !
Au lieu d'avoir écrit en gros...
Comment faire ?
Merci d'avance.
$msg = '<h1>Demande de partition</h1><p><strong>Adresse mail de l\'expéditeur : </strong>';
$msg .= stripslashes(htmlspecialchars($_POST['mail']));
$msg .= '<br /><strong>Titre de la partition : </strong>';
$msg .= stripslashes(htmlspecialchars($_POST['titre']));
$msg .= '<br /><strong>Compositeur : </strong>';
$msg .= stripslashes(htmlspecialchars($_POST['compositeur']));
$msg .= '<br /><strong>Instruments : </strong>';
$msg .= implode(', ', $_POST["instrument"]);
$msg .= '<br /><strong>Autres instruments : </strong>';
$msg .= stripslashes(htmlspecialchars($_POST['autre']));
$msg .= '<br /><strong>Notes : </strong>';
$msg .= nl2br(stripslashes(htmlspecialchars($_POST['notes'])));
require "phpmailer/class.phpmailer.php";
$mail = new PHPMailer();
$mail->IsSMTP(); // telling the class to use SMTP
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Host = "smtp.laposte.net"; // SMTP server
$mail->Username = "sites.web";
$mail->Password = "gfd";
$mail->From = "sites.web@laposte.net";
$mail->AddAddress("tbtous@gmail.com");
$mail->Subject = "First PHPMailer Message";
$mail->Body = $msg;
$mail->AddAttachment('uploads/'.$_FILES['monfichier']['name'].'');
$mail->WordWrap = 50;
if(!$mail->Send())
{
echo 'Le message n\'a pas pu être envoyé';
echo 'Erreur Mailer : ' . $mail->ErrorInfo;
}
else
{
echo 'Félicitation ! Le message à bien été envoyé. Vous recevrez la partition finale dans une semaine à un mois.';
}
J'ai le message suivant qui apparait lorsque j'ouvre mon message :
<h1>Demande de partition</h1><p><strong>Adresse
mail de l'expéditeur : </strong>d<br
/><strong>Titre de la partition : </strong>d<br
/><strong>Compositeur : </strong>d<br
/><strong>Instruments :
</strong>guitareseche_accords<br /><strong>Autres
instruments : </strong>h<br /><strong>Notes :
</strong>Si vous voulez indiquer quelque chose de
spécial, c'est ici !
Au lieu d'avoir écrit en gros...
Comment faire ?
Merci d'avance.
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
25 mai 2009 à 13:58
25 mai 2009 à 13:58
t'as essayé en ne mettant pas la meme adresse dans le from et dans le to ?
little_programmeur
Messages postés
54
Date d'inscription
mercredi 28 janvier 2009
Statut
Membre
Dernière intervention
27 juin 2019
4
25 mai 2009 à 15:59
25 mai 2009 à 15:59
Oui, mais ça ne fonctionne pas. Toujours la même erreur.
D'autres idées ?
Est-ce que ça peux venir de Gmail qui n'accèpte pas d'envoyer un message depuis un serveur distant ?
D'autres idées ?
Est-ce que ça peux venir de Gmail qui n'accèpte pas d'envoyer un message depuis un serveur distant ?
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
25 mai 2009 à 16:04
25 mai 2009 à 16:04
c'est vrai que gmail utilise l'authentification. Et dans ton scipt, on ne voit à aucun moment de mot de pass..
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
little_programmeur
Messages postés
54
Date d'inscription
mercredi 28 janvier 2009
Statut
Membre
Dernière intervention
27 juin 2019
4
26 mai 2009 à 09:09
26 mai 2009 à 09:09
J'ai mis une autentification, mais ca ne fonctionne toujours pas :
<?php
include("nouv/dtd.html");
echo "Envoyer un mail avec phpmailer";
include("nouv/menu.html");
?>
<div class="corps">
test
<?php
require "phpmailer/class.phpmailer.php";
echo "Envoyer un mail avec phpmailer1<br />";
$mail = new PHPmailer();
echo "Envoyer un mail avec phpmailer2<br />";
$mail->IsSMTP();
echo "Envoyer un mail avec phpmailer3<br />";
$mail->Host='smtp.gmail.com';
echo "Envoyer un mail avec phpmailer4<br />";
$mail->Username = "tbtous";
$mail->Password = "motdepasse";
$mail->From='tbtous@gmail.com';
echo "Envoyer un mail avec phpmailer5<br />";
$mail->AddAddress('tbtous@gmail.com');
echo "Envoyer un mail avec phpmailer6<br />";
$mail->AddReplyTo('tbtous@gmail.com');
echo "Envoyer un mail avec phpmailer7<br />";
$mail->Subject='Exemple trouvé sur DVP';
echo "Envoyer un mail avec phpmailer8<br />";
$mail->SetLanguage("en", "phpmailer/language/");
$mail->Body='Voici un exemple d\'e-mail au format Texte';
echo "Envoyer un mail avec phpmailer9<br />";
if(!$mail->Send()){ //Teste le return code de la fonction
echo $mail->ErrorInfo; //Affiche le message d'erreur (ATTENTION:voir section 7)
}
else{
echo 'Mail envoyé avec succès';
}
$mail->SmtpClose();
unset($mail);
echo "Envoyer un mail avec phpmailer10<br />";
?>
</div>
</body>
</html>
Voyez vous une erreur ?
--EDIT--
C'est bon, ça fonctionne en partie : j'arrive à faire ceci avec un serveur laposte... mais pas avec Gmail.
Comment faire pour pouvoir utiliser une adresse Gmail ?
Merci d'avance
<?php
include("nouv/dtd.html");
echo "Envoyer un mail avec phpmailer";
include("nouv/menu.html");
?>
<div class="corps">
test
<?php
require "phpmailer/class.phpmailer.php";
echo "Envoyer un mail avec phpmailer1<br />";
$mail = new PHPmailer();
echo "Envoyer un mail avec phpmailer2<br />";
$mail->IsSMTP();
echo "Envoyer un mail avec phpmailer3<br />";
$mail->Host='smtp.gmail.com';
echo "Envoyer un mail avec phpmailer4<br />";
$mail->Username = "tbtous";
$mail->Password = "motdepasse";
$mail->From='tbtous@gmail.com';
echo "Envoyer un mail avec phpmailer5<br />";
$mail->AddAddress('tbtous@gmail.com');
echo "Envoyer un mail avec phpmailer6<br />";
$mail->AddReplyTo('tbtous@gmail.com');
echo "Envoyer un mail avec phpmailer7<br />";
$mail->Subject='Exemple trouvé sur DVP';
echo "Envoyer un mail avec phpmailer8<br />";
$mail->SetLanguage("en", "phpmailer/language/");
$mail->Body='Voici un exemple d\'e-mail au format Texte';
echo "Envoyer un mail avec phpmailer9<br />";
if(!$mail->Send()){ //Teste le return code de la fonction
echo $mail->ErrorInfo; //Affiche le message d'erreur (ATTENTION:voir section 7)
}
else{
echo 'Mail envoyé avec succès';
}
$mail->SmtpClose();
unset($mail);
echo "Envoyer un mail avec phpmailer10<br />";
?>
</div>
</body>
</html>
Voyez vous une erreur ?
--EDIT--
C'est bon, ça fonctionne en partie : j'arrive à faire ceci avec un serveur laposte... mais pas avec Gmail.
Comment faire pour pouvoir utiliser une adresse Gmail ?
Merci d'avance
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
26 mai 2009 à 09:22
26 mai 2009 à 09:22
il est fréquent que l'accès au smtp qui ne soient pas ceux de ton FAI soit bloqué.
1- es ce que tu héberges le site chez toi? ou chez qui héberges tu le site (et quelle formule d'abonnement)
2- si tu héberges toi meme, qui est ton FAI?
3- vas dans executer, tapes cmd , puis, dans la fenetre noire, tapes telnet smtp.gmail.com 25 , puis la touche entrée , et regardes si le serveur te dis helle ou si la connexion est refusée ...
1- es ce que tu héberges le site chez toi? ou chez qui héberges tu le site (et quelle formule d'abonnement)
2- si tu héberges toi meme, qui est ton FAI?
3- vas dans executer, tapes cmd , puis, dans la fenetre noire, tapes telnet smtp.gmail.com 25 , puis la touche entrée , et regardes si le serveur te dis helle ou si la connexion est refusée ...
little_programmeur
Messages postés
54
Date d'inscription
mercredi 28 janvier 2009
Statut
Membre
Dernière intervention
27 juin 2019
4
26 mai 2009 à 09:26
26 mai 2009 à 09:26
C'est bon, ça fonctionne en partie : j'arrive à faire ceci avec un serveur laposte... mais pas avec Gmail.
Pour répondre à ta question :
1) Je suis hébergé sur olympe-network, avec un abonnement gratuit.
2)je ne m'héberge pas moi même
3)Je ne peux pas faire exécuter, car je ne sais pas comment accéder à cette commande via O-N avec olympe network.
Comment faire pour pouvoir utiliser une adresse Gmail ?
Pour répondre à ta question :
1) Je suis hébergé sur olympe-network, avec un abonnement gratuit.
2)je ne m'héberge pas moi même
3)Je ne peux pas faire exécuter, car je ne sais pas comment accéder à cette commande via O-N avec olympe network.
Comment faire pour pouvoir utiliser une adresse Gmail ?
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
26 mai 2009 à 09:29
26 mai 2009 à 09:29
la commande était si tu étais hébergé toi meme, j'ai pas précisé...
ton hébergeur ne te propose pas son propre serveur smtp ? car en smtp, c'est toi qui choisis l'adresses d'expéditeur à afficher....
es ce que l'adresse mail dans les exemples est ta vrai adresse ?
ton hébergeur ne te propose pas son propre serveur smtp ? car en smtp, c'est toi qui choisis l'adresses d'expéditeur à afficher....
es ce que l'adresse mail dans les exemples est ta vrai adresse ?
little_programmeur
Messages postés
54
Date d'inscription
mercredi 28 janvier 2009
Statut
Membre
Dernière intervention
27 juin 2019
4
26 mai 2009 à 09:56
26 mai 2009 à 09:56
Oui, c'est la vrai adresse. Et mon herbergeur me propose un SMTP. Je pourrais en effet l'utiliser.
Mais je n'arrive pas à utiliser la mise en page html : Y a t'il un pb dans mon code ?
require "phpmailer/class.phpmailer.php";
$mail = new PHPMailer();
$mail->IsSMTP(); // telling the class to use SMTP
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Host = "smtp.laposte.net"; // SMTP server
$mail->Username = "sites.web";
$mail->Password = "fdsg";
$mail->From = "sites.web@laposte.net";
$mail->AddAddress("sites.web@laposte.net");
$mail->Subject = "First PHPMailer Message";
//$mail->Body = $msg;
$mail->Body='<html><body><center><font size=8>Le fichier est attaché ci-dessus</font><br></body></html>';
$mail->AddAttachment('uploads/'.$_FILES['monfichier']['name'].'');
$mail->WordWrap = 50;
if(!$mail->Send())
{
echo 'Le message n\'a pas pu être envoyé';
echo 'Erreur Mailer : ' . $mail->ErrorInfo;
}
else
{
echo 'Félicitation ! Le message à bien été envoyé. Vous recevrez la partition finale dans une semaine à un mois.';
}
Merci d'avance
Mais je n'arrive pas à utiliser la mise en page html : Y a t'il un pb dans mon code ?
require "phpmailer/class.phpmailer.php";
$mail = new PHPMailer();
$mail->IsSMTP(); // telling the class to use SMTP
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Host = "smtp.laposte.net"; // SMTP server
$mail->Username = "sites.web";
$mail->Password = "fdsg";
$mail->From = "sites.web@laposte.net";
$mail->AddAddress("sites.web@laposte.net");
$mail->Subject = "First PHPMailer Message";
//$mail->Body = $msg;
$mail->Body='<html><body><center><font size=8>Le fichier est attaché ci-dessus</font><br></body></html>';
$mail->AddAttachment('uploads/'.$_FILES['monfichier']['name'].'');
$mail->WordWrap = 50;
if(!$mail->Send())
{
echo 'Le message n\'a pas pu être envoyé';
echo 'Erreur Mailer : ' . $mail->ErrorInfo;
}
else
{
echo 'Félicitation ! Le message à bien été envoyé. Vous recevrez la partition finale dans une semaine à un mois.';
}
Merci d'avance
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
26 mai 2009 à 09:59
26 mai 2009 à 09:59
ce que je voulais dire, c'est que si tu veux les réponses sur ton adrese gmail, tu peux faire ca:
$mail->Host = "smtp.laposte.net"; // SMTP server
$mail->Username = "sites.web";
$mail->Password = "fdsg";
$mail->From = "tbtous@gmail.com";
$mail->AddAddress("tbtous@gmail.com");
$mail->Host = "smtp.laposte.net"; // SMTP server
$mail->Username = "sites.web";
$mail->Password = "fdsg";
$mail->From = "tbtous@gmail.com";
$mail->AddAddress("tbtous@gmail.com");
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
26 mai 2009 à 18:04
26 mai 2009 à 18:04
ce n'est pas la meme fonction, mais:
https://www.php.net/manual/en/function.mail.php
eux, mettent la balise <html><body> puis </body> </html> que tu semble avoir oublié....
https://www.php.net/manual/en/function.mail.php
eux, mettent la balise <html><body> puis </body> </html> que tu semble avoir oublié....
little_programmeur
Messages postés
54
Date d'inscription
mercredi 28 janvier 2009
Statut
Membre
Dernière intervention
27 juin 2019
4
27 mai 2009 à 18:01
27 mai 2009 à 18:01
C'est bon, j'ai trouvé ou est l'erreur : j'avais oublié de mettre $mail->IsHTML(true);
Merci beaucoup.
Merci beaucoup.
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
28 mai 2009 à 11:56
28 mai 2009 à 11:56
ok.
visiblement le probleme est résolu, je le met en résolu
visiblement le probleme est résolu, je le met en résolu