cs_AcarnanDragoon
Messages postés55Date d'inscriptionlundi 9 février 2009StatutMembreDernière intervention 3 octobre 2012
-
29 avril 2010 à 18:34
cs_AcarnanDragoon
Messages postés55Date d'inscriptionlundi 9 février 2009StatutMembreDernière intervention 3 octobre 2012
-
4 mai 2010 à 14:36
Bonjour à toutes et à tous,
Voila mon problème :
Je dois envoyer des mails de confirmation lors d'une inscription sur un site. Auparavant j'utilisais la fonction mail de php avec les informations relatives au SMTP de mes sites.
Dans le cas présent, le site sera sur un serveur n'ayant pas de serveur SMTP. On me fournit donc les informations nécessaire sur un autre serveur SMTP avec un login et mot de passe.
Problème, comment puis-je envoyé un mail à partir de php en utilisant le SMTP distant ?
Si vous avez des solutions je suis preneur, merci d'avance pour votre aide et bonne journée.
cs_AcarnanDragoon
Messages postés55Date d'inscriptionlundi 9 février 2009StatutMembreDernière intervention 3 octobre 2012 30 avril 2010 à 09:25
Bonjour et merci pour cette réponse rapide.
Ceci étant je n'ai pas accès au php.ini et le webmaster ne souhaite pas le modifier. je dois donc trouver un moyen me permettant d'envoyer des mails à partir d'un SMTP avec un compte que la personne me donne.
D'après lui il avait déjà utilisé cette méthode en utilisant la classe mail::factory, mais c'est du pear et je ne sais pas l'utiliser.
Y aurait il d'autres moyens ?
Merci en tout cas pour votre aide, bonne journée à tous !
Vamosplaya
Messages postés127Date d'inscriptionvendredi 16 octobre 2009StatutMembreDernière intervention10 décembre 2012 30 avril 2010 à 14:00
Bonjour
"Je dois envoyer des mails de confirmation lors d'une inscription sur un site. Auparavant j'utilisais la fonction mail de php avec les informations relatives au SMTP de mes sites. "
Si le site ou il y a le formulaire et pas le SMTP tu fais pointer le
lien du mail de confirmation sur un serveur ou tu as un SMTP.
Ton script d'envoi d'email se trouvant sur le serveur ou il y a un SMTP.
Seul impératif l'email expéditeur doit être dans le domaine du SMTP.
J'utilise cela pour un site Web ou il n'y a pas de SMTP et ça fonctionne bien.
Sinon tu peux utiliser directement les sockets, sur ce site tu trouveras pleins de codes déjà fait permettant d'envoyer des mails sans passer par mail().
cs_AcarnanDragoon
Messages postés55Date d'inscriptionlundi 9 février 2009StatutMembreDernière intervention 3 octobre 2012 3 mai 2010 à 11:35
Bonjour,
Je ne comprend pas à partir du ini_set comment je peux utiliser un smtp distant, sachant qu'il faut que je précise un nom d'utilisateur et mot de passe pour utiliser un compte du smtp distant. Auriez-vous un exemple ?
TychoBrahe
Messages postés1309Date d'inscriptionsamedi 31 janvier 2009StatutMembreDernière intervention 5 juin 201312 4 mai 2010 à 00:43
Salut,
Je ne comprend pas à partir du ini_set comment je peux utiliser un smtp distant, sachant qu'il faut que je précise un nom d'utilisateur et mot de passe pour utiliser un compte du smtp distant. Auriez-vous un exemple ?
Regarde donc la documentation de ini_set(). En gros ça va te permettre de forcer des valeurs de la config de php sans toucher au php.ini, ce qui est ce qu'il te faut si tu ne peux pas modifier ce dernier fichier.
TychoBrahe
Messages postés1309Date d'inscriptionsamedi 31 janvier 2009StatutMembreDernière intervention 5 juin 201312 4 mai 2010 à 11:26
Salut,
Mais comment je peux préciser un mot de passe ?
Désolé, j'avai zappé cette info, la fonction mail() de php ne supporte pas l'authentification.
Bref, pour ceci tu peux utiliser au choix PHPMailer, ou bien la classe Mail comme tu l'as déjà fait (voici un exemple fonctionnel), ou encore un des nombreux scripts présents sur ce site (la bare de recherche est juste sous les menus).
cs_AcarnanDragoon
Messages postés55Date d'inscriptionlundi 9 février 2009StatutMembreDernière intervention 3 octobre 2012 4 mai 2010 à 14:36
Aurais-je fais une erreur ?
les message d'erreur étant :
Mailer Error: The following From address failed:adressemail
<?php
require("class.phpmailer.php");
$mail = new PHPMailer();
$mail->IsSMTP(); // set mailer to use SMTP
$mail->Mailer="smtp";
$mail->Host = 'smtp.blabla.bla'; // specify main and backup server
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Port="587";
$mail->Username = 'adressemail'; // SMTP username
$mail->Password = 'motdepasse'; // SMTP password
$mail->From = "adressemail";
$mail->FromName = "nom";
$mail->AddAddress("adressemail",""); // name is optional
$mail->AddReplyTo("adressemail","");
$mail->Subject = "Here is the subject";
$mail->Body = "This is the HTML message body in bold! ";
$mail->AltBody = "This is the body in plain text for non-HTML mail clients";
if(!$mail->Send())
{
echo "Message could not be sent. ";
echo "Mailer Error: " . $mail->ErrorInfo;
exit;
}
echo "Message has been sent";
?>