8722 sujets

Développement web côté serveur, CMS

Bonjour,

Sur le serveur distant mes mails fonctionnent bien, mais, en local, je n'arrive pas a configurer WAMP pour envoyer des mails.

Je détaille :
Mon serveur mail nécessite une authentification SMTP, non cryptée (c bizarre je sais).

J'ai essayé de configurer php.ini comme ceci:

SMTP = smtp.orange.fr
smtp_server = smtp.orange.fr
smtp_port = 25
auth_username = xxxx@orange.fr
auth_password = xxxxxx


Mais rien n'y fait !

Comment dois-je configurer WAMP, php.ini, ou autre, sachant que j'aimerais, si possible, n'utiliser que la fonction mail() de PHP, pour éviter d'écrire un code différent de la version en ligne ?
Bonjour, pour ma part, voici ma config qui fonctionne bien:



SMTP = blabla.bloblo.fr
smtp_port = 25

sendmail_from = xxxx@bloblo.fr

Modifié par Mabelle (04 Mar 2011 - 15:14)
Merci, j'ai testé ta méthode, mais j'obtiens un autre problème.

Avec ce code dans php.ini :

SMTP = smtp.orange.fr
smtp_server = smtp.orange.fr
smtp_port = 25
auth_username = *****@orange.fr
auth_password = *****
sendmail_from = monmail@orange.fr

et ce code PHP :

$de_nom = 'De_Nom';
$de_mail = 'monmail@orange.fr';
$reply_to = 'reply_to@orange.fr';
$bcc='';

$sujet='test';
$message='test';

$entete  = "From: ".utf8_decode($de_nom)." <$de_mail>\r\n";
$entete .= "Reply-To: $reply_to\r\n";
if (!empty($bcc)) {
	$entete .= "Bcc: $bcc\r\n";
}
$entete .= "Return-Path: $de_mail\r\n";
$entete .= "X-Mailer: PHP/".phpversion()."\n";
$entete .= "MIME-Version: 1.0\n";
$entete .= "Content-type: text/html; charset=utf-8\n";
$entete .= "Content-Transfer-Encoding: 8bit\n";

mail("$vers_nom <$vers_mail>", $sujet, $message, $entete)


Le navigateur me renvoie l'erreur suivante :

Warning: mail() [function.mail]: SMTP server response: 550 5.1.0 <De_Nom <monmail@orange.fr>> '@' or '.' expected after 'De_Nom ' in C:\Wamp\www\test.php on line 211

Je ne comprends pas pourquoi il me met tout ce qui est dans From entre des "<>"... alors que sur la version en ligne il l'interprète correctement.
Modifié par Tetranima (04 Mar 2011 - 16:56)
La seule différence entre ton code et le mien, ce sont les deux :

auth_username = *****@orange.fr
auth_password = *****


Je suis plutôt débutante dans ce domaine... désolée.

As-tu essayé en les enlevant ?
Est-ce que cela fonctionne si tu commentes la ligne "From" ?

Je ne saurais trop te conseiller d'utiliser une librairie telle que Swift pour gérer l'envoie de mail avec la garantie de ne pas tomber sur des problème de compatibilité suivant les serveurs SMTP. Ou tout simplement pour te faciliter l'envoie de mail avec des fonctionnalités avancés simple d'utilisation.
@Mabelle :
J'ai complété ces lignes dans php.ini car Orange requiert une authentification pour envoyer des mails via SMTP.
J'obtenais une erreur quand j'essayais d'envoyer un mail depuis WAMP qui me disait : "Authentication Required".
Cependant je n'ai pas pu voir le résultat de l'ajout de ces lignes à cause de l'autre erreur.

@moust :
Je vais essayer ta technique, je te dirais si ça a marché.
Edit : Le truc aussi, c'est que je voudrais que mes codes local et distant soient les mêmes. Si j'enlève cette ligne sur le serveur distant, je ne peux plus configurer l'adresse d'envoi (qui change selon le mail)

Pour les librairies, j'y ai pensé, mais ça m'embête un peu car j'ai créé moi même une fonction PHP pour l'envoi de tous les mails des deux sites que je gère.
Et j'ai pas envie de tout recoder maintenant, je suis déjà débordé de travail (j'ai l'équivalent de 4 mois de tâches dans mon planning déjà Xx).

Après, si vraiment je ne trouve pas de solution, je pourrais peut-être me résoudre à re-coder seulement les nouveaux trucs que je teste.
C'est juste que, perfectionniste et maniaque comme je suis, j'ai du mal à mélanger les façons de faire (soit je fais tout d'une manière soit tout d'une autre), si je mélange, j'ai un problème existentiel qui "pop" dans ma tête XD.
De plus il ne s'agit que de pouvoir tester en local, sur le site distant les fonction mail marchent parfaitement, donc ce ne serait pas très rentable de recoder tout pour ça.

PS : Je kiffe ton avatar, tu l'aurais pas en grand ? (pour ma collec' d'images ^^)
Modifié par Tetranima (04 Mar 2011 - 21:13)