Utilise la fonction mail

bala -  
 bala -
Bonjour,

quand on utilise la fonction mail() en PHP depuis un site internet, c'est quel serveur SMTP qui envoie le mèl :
- celui de notre FAI ?
- celui de l'hebergeur du site ?

Merci pour vos réponses éclairées et éclairantes...
A voir également:

4 réponses

Ayumi
 
celui qui est configuré dans ton install de php
0
bala
 
Je n'y ai pas accès à mon install de PHP : je suis hébergée sous free. J'imagine donc que cela veut dire que le serveur SMTP est celui de free ?
0
Ayumi
 
ouep, il y a de fortes chance.
pour le tester, envoie-toi un mail depuis php.
explore alors les received de ton message et tu sauras ainsi qui émet les emails
0
bala
 
le problème, c'est que l'envoi de mèl a fonctionné mais ne fonctionne plus.
J'ai essayé d'utiliser la classe PHPmailer où tu lui précises un serveur SMTP (p'tite question : ça veut dire que c'est ce serveur qui va envoyer tous tes mèls ?), mais j'obtiens toujours, quel que soit le serveur SMTP que je renseigne : could not connect to SMTP host.
T'aurais une idée ?
0
Ayumi
 
idéalement, tu ne devrais pas préciser un smtp dans ton code, car le jour où ton site web déménage, ça te fait une bricole de plus à te rappeler et donc une remarque négative sur la migration car on l'oublie forcément

ensuite, les politiques antispam sont souvent basées sur "cette ip est-elle utilisée par un de mes clients ?"
si le smtp que tu as fourni à PHPMailer vérifie que l'ip qui envoie le mail est bien sous sa coupe et que ce n'est pas le cas, il est facilement explicable pourquoi l'envoi n'aboutit pas. Par contre si tu as indiqué smtp.free.fr, on peut raisonnablement s'attendre à ce que free (FAI) ne bloque pas free (Hébergeur) dans l'envoi de messages. donc si ce dernier te renvoie des erreurs c'est parce qu'il te manque un petit paramètre ici ou là. Je suis pas très versée en PHP mais si tu montres un bout du code, un œil neuf peut éventuellement voir ce qui va pas.
0
bala
 
Merci Ayumi, c'est très sympa à toi.
Voilà mon code concernant PHPmailer :
require("../modules/CMSMailer/phpmailer/class.phpmailer.php");
$mail = new PHPmailer();
$mail->IsSMTP();
$mail->IsHTML(true);
$mail->Host='smtp.free.fr';
$mail->Port=25;
$mail->SMTPAuth=false;

(j'ai aussi essayé en mettant true et en rajoutant les 2 paramètres ci-après :
$mail->Username='user';
$mail->Password='mdp';)

$mail->From='adresse_expediteur@free.fr';
$mail->AddAddress('adresse_recepteur@aaa.fr');

$mail->AddReplyTo('adresse_expediteur@free.fr');
$mail->Subject='Essai envoi mail par SMTP depuis mon serveur';
$mail->Body='Si je peux lire ce texte c\'est que cela marche ;-)';
if(!$mail->Send()){
echo $mail->ErrorInfo;
}
else{
echo 'Mail envoyé avec succès';
}
$mail->SmtpClose();
unset($mail);
0