Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1880 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  fonction mail() ne fonctionne pas

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

fonction mail() ne fonctionne pas

n°2145206
sebastien4​444
Posté le 09-06-2012 à 13:55:25  profilanswer
 

Bonjour,
 
J'ai créée une page d'envoi de mail (qui est appelé par un formulaire).
Voici la code :
 
<?php
ini_set('SMTP', 'nom_serveur_smtp');
$mail = 'mail_de_test@free.fr'; // Déclaration de l'adresse de destination.
$passage_ligne = "\n";
 
//=====Déclaration des messages au format texte et au format HTML.
$message_txt = "Salut à tous, voici un e-mail envoyé par un script PHP.";
$message_html = "<html><head></head><body><b>Salut à tous</b>, voici un e-mail envoyé par un <i>script PHP</i>.</body></html>";
//==========
 
//=====Création de la boundary
$boundary = "-----=".md5(rand());
//==========
 
//=====Définition du sujet.
$sujet = "Hey mon ami!";
//=========
 
//=====Création du header de l'e-mail.
$header = "From: \"Came\"<monmail@xxxx.com>".$passage_ligne;
$header.= "Reply-to: \"Seb\" <monmail@xxxx.com>".$passage_ligne;
$header.= "MIME-Version: 1.0".$passage_ligne;
$header.= "Content-Type: multipart/alternative;".$passage_ligne." boundary=\"$boundary\"".$passage_ligne;
//==========
 
//=====Création du message.
$message = $passage_ligne."--".$boundary.$passage_ligne;
//=====Ajout du message au format texte.
$message.= "Content-Type: text/plain; charset=\"ISO-8859-1\"".$passage_ligne;
$message.= "Content-Transfer-Encoding: 8bit".$passage_ligne;
$message.= $passage_ligne.$message_txt.$passage_ligne;
//==========
$message.= $passage_ligne."--".$boundary.$passage_ligne;
//=====Ajout du message au format HTML
$message.= "Content-Type: text/html; charset=\"ISO-8859-1\"".$passage_ligne;
$message.= "Content-Transfer-Encoding: 8bit".$passage_ligne;
$message.= $passage_ligne.$message_html.$passage_ligne;
//==========
$message.= $passage_ligne."--".$boundary."--".$passage_ligne;
$message.= $passage_ligne."--".$boundary."--".$passage_ligne;
//==========
 
//=====Envoi de l'e-mail.
mail($mail,$sujet,$message,$header);
 
//==========
?>
 
Problème :
- lorsque j'exécute cette page en local avec le SMTP de Free (ini_set('SMTP', 'smtp.free.fr')) -> ça fonctionne
- lorsque j'exécute cette page hébergé sur mon FTP Free avec le SMTP de free (ini_set('SMTP', 'smtp.free.fr')) -> ça fonctionne
- lorsque j'exécute cette page hébergé sur mon FTP Free avec un autre SMTP (ini_set('SMTP', 'smtp.xxx.fr')) -> ça fonctionne
MAIS  
- lorsque j'exécute cette page hébergé sur mon FTP OVH avec le SMTP de free (ini_set('SMTP', 'smtp.free.fr')) -> ça ne fonctionne pas (mail non reçu)
- lorsque j'exécute cette page en local avec un autre SMTP (ini_set('SMTP', 'smtp.xxx.fr')) -> ça ne fonctionne pas (Failed to connect to mailserver at "nom_serveur_smtp" port 25, verify your "SMTP"
 
(Note: si c'est un facteur qui peut jouer, mon FAI : Free)
 
et je ne comprend vraiment pas pourquoi ...
Quelqu'un a-t-il déjà rencontré ce genre de problème ?


Message édité par sebastien4444 le 09-06-2012 à 14:11:23
mood
Publicité
Posté le 09-06-2012 à 13:55:25  profilanswer
 

n°2145235
rufo
Pas me confondre avec Lycos!
Posté le 09-06-2012 à 22:56:31  profilanswer
 

Il me semble qu'OVH vérifie qu'aucun script php ne se sert de la fonction mail() pour spammer ou faire des trucs pas nets. Il faut donc passer par leur serveur de mail.
 
Pour Free, je pense que tu pourrais passer par un autre smtp simplement, si tu mets le smtp d'un autre FAI, c'est lui qui ne va pas vouloir que tu passes par lui alors que tu es chez Free et que donc tu dois passer par lui. Mais je suis sûr que si tu as un ami qui a son propre serveur de mail et que dans ton script, tu mets son smtp, ça marchera...


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  fonction mail() ne fonctionne pas

 

Sujets relatifs
Script Détection Windows ne fonctionne pas sous SevenAppel fonction Javascript dans variable PHP
Créer une fonction de recherche sur excelWinpe Menu.vbs de microsoft (ajout fonction en local disque usb)
[HELP]Ma page ne fonctionne pasfonction qui transforme une matrice en vecteur en langage C
[Interrogation]Fonction ReadFileExRedimentionnement d'image en fonction de la fenêtre
[javascript] problème sur fonction SWITCHPourquoi la fonction mail fonctionne pas chez moi?
Plus de sujets relatifs à : fonction mail() ne fonctionne pas


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR