Problème Email HTML par PHP (Fonctionne pas)

Petit nouveau ! | 2 Messages

01 sept. 2011, 11:53

Bonjour,
C'est mon premier topic sur ce forum et j'espère que vous allez m'aider à trouver une solution à mon problème. Il s'agit de créer un mail PHP en HTML afin d'insérer dedans un lien cliquable de type
<a href="Liendemonsite"> Clique Ici</a>
.
Seulement voilà j'ai essayé toutes les solutions du net concernant le mail html en php et aucunes ne fonctionnes chez moi.
Le problème viendrait des headers, car si je les enlèves à ma fonction mail, celui-ci est envoyé. A l'inverse si je les inclus, le mail n'arrive jamais.
Voici le code de mon mail qui ressemble à tous ceux qui sont sur le net
<?php

     ini_set("SMTP","smtp.wanadoo.fr");
     ini_set("smtp_port","25");
     ini_set("sendmail_from","[email protected]");
     $message ="Coucou c'est un test ! clique sur le lien suivant : </br>";
	 $message .="<a href='http://Monsite.com'> Clique-ICI </a>";
	 $entete = "MIME-Version: 1.0\r\n";
	 $entete .= "Content-type: text/html; charset=iso-8859-1\r\n";
     if(mail('[email protected]','Test HTML Mail', $message, $entete))
     {
          echo 'Le message a été envoyé';
     }
     else
     {
          echo 'Le message n\'a pu être envoyé';
     }
?> 
Noté que je suis obligé d'utiliser les INI_SET et que je suis obligé d'utiliser l'adresse mail associée à mon FAI car sans cela, ça ne marche pas et j'aimerais bien un petit éclaircissement la dessus ci c'est possible car admettons que je veuille envoyer un mail depuis ini_set("sendmail_from","[email protected]"); et que j'utilise le SMTP correspondant ini_set("SMTP","mail.gmx.net"); et le port aussi et bien cela ne fonctionne pas. Pourquoi ?

Merci de m'aider :D

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

01 sept. 2011, 12:07

salut,

je viens de tester ton code en modifiant juste les adresses email pour que cela fonction et devine ? ça tourne au poil Xd

vérifie dans le dossier spam de ton adresse réceptrice

@+
Il en faut peu pour être heureux ......

Petit nouveau ! | 2 Messages

01 sept. 2011, 12:39

En effet je viens de changer l'adresse du destinataire et cela marche chez Orange, or je tourne sur ThunderBird et sur une adresse Caramail et je ne vois pas où régler ce soucis.
De plus comment puis-je changer l'adresse mail de l’expéditeur ? Suis-je obligé de mettre celle de mon FAI pour que cela fonctionne ? Si je change cela ne marche pas :cry:
Merci :)

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

01 sept. 2011, 12:43

- caramail ou pas si le serveur le met dans le dossier spam y a peux de chance que ton butineur (thunderbird ou autre) le récupère. a tu regardé dans le dossier spam sur l'interface mail en ligne ?

- Ta deuxième question dépend du serveur smtp et il semble qu'orange n’autorise l'envoie de mail qu'avec une adresse orange la tu ne peux rien y faire. C'est déjà bien qu'il autorise la connexion sans authentification (autre que @orange.fr) car sinon tu n'aurais pas pu l'utiliser du tout avec php ^^
le serveur web de site n'a pas de serveur smtp ça serais quand même plus simple :mrgreen:


@+
Il en faut peu pour être heureux ......

ViPHP
ViPHP | 2577 Messages

01 sept. 2011, 14:30

@moogli : beaucoup de serveur SMTP de FAI sont bridés pour ne permettre l'accès que si tu es connecté à leur réseau. Les FAI ont peur de voir leur serveur SMTP blacklisté et limite leur utilisation au maximum.

Je suppose que dans le cas présent il s'agit de tests "en localhost".

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

01 sept. 2011, 15:19

j'ai testé sur mon pc local avec le même code mon fai étant orange ça fonctionne XD



@+
Il en faut peu pour être heureux ......