[php] fonction mail()
Résolu/Fermé
mony84
Messages postés
68
Date d'inscription
mercredi 19 juillet 2006
Statut
Membre
Dernière intervention
5 octobre 2010
-
18 juil. 2007 à 07:41
matin - 12 déc. 2008 à 17:57
matin - 12 déc. 2008 à 17:57
A voir également:
- [php] fonction mail()
- Fonction si et - Guide
- Publipostage mail - Accueil - Word
- Windows live mail - Télécharger - Mail
- Yahoo mail sans téléphone - Guide
- Créer une adresse mail hotmail - Guide
4 réponses
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
18 juil. 2007 à 09:42
18 juil. 2007 à 09:42
Bonjour,
Je n'ai pas la solution à ton problème, mais déjà :
- Angle brackets, ce ne sont pas des parenthèses, mais des < >
- Tu mets des noms de variables $variable dans des chaines de caractères délimitées par des ' ' : elles ne seront pas interprétées ! Il faut soit mettre des " " ("truc $variable bidule"), soit fermer la chaîne et concaténer ('truc '.$variable.' bidule', que je trouve plus propre personnellement).
Peut-être que modifier cela suffira à résoudre ton problème (notamment à cause de tes en-têtes), mais je n'en suis pas sûr.
Xavier
Je n'ai pas la solution à ton problème, mais déjà :
- Angle brackets, ce ne sont pas des parenthèses, mais des < >
- Tu mets des noms de variables $variable dans des chaines de caractères délimitées par des ' ' : elles ne seront pas interprétées ! Il faut soit mettre des " " ("truc $variable bidule"), soit fermer la chaîne et concaténer ('truc '.$variable.' bidule', que je trouve plus propre personnellement).
Peut-être que modifier cela suffira à résoudre ton problème (notamment à cause de tes en-têtes), mais je n'en suis pas sûr.
Xavier
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
18 juil. 2007 à 10:16
18 juil. 2007 à 10:16
Mmmmh...
Ca à l'air de venir du serveur smtp... Tu utilises lequel ?
Ca à l'air de venir du serveur smtp... Tu utilises lequel ?
mony84
Messages postés
68
Date d'inscription
mercredi 19 juillet 2006
Statut
Membre
Dernière intervention
5 octobre 2010
11
18 juil. 2007 à 11:32
18 juil. 2007 à 11:32
j'ai essayé d'installer un seveur smtp local sur mon PC (ARgo) mais j'arrive pas à m'en sortir avec.
Le site que je suis en train de développer est pour une entreprise installée en Chine. et je sais rien sur leur fournisseur d'accès.
Qu'est ce que je dois faire?
Le site que je suis en train de développer est pour une entreprise installée en Chine. et je sais rien sur leur fournisseur d'accès.
Qu'est ce que je dois faire?
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
18 juil. 2007 à 11:43
18 juil. 2007 à 11:43
Dans ton php.ini, tu as mis quoi au niveau smtp ? Un site fourni par ton client ? Si oui, je pense qu'il faut leur remonter l'erreur pour qu'ils contactent leur fournisseur d'accès...
mony84
Messages postés
68
Date d'inscription
mercredi 19 juillet 2006
Statut
Membre
Dernière intervention
5 octobre 2010
11
19 juil. 2007 à 07:29
19 juil. 2007 à 07:29
au niveau de php.ini, j'ai essayé avec smtp.google.com et le port 25. et voila le message d'erreur :
mail() [function.mail]: SMTP server response: 550 5.7.1 <send_to@yahoo.fr>... Relaying denied. IP name lookup failed [210.22.134.2]
pour l'adresse "$from_email ", j'ai mis mon adresse gmail.
avec smtp.yahoo.fr et "$from_email " mon adresse yahoo.fr, j'obtient le message suivant :
mail() [function.mail]: Failed to connect to mailserver at "smtp.yahoo.fr" port 25, verify your "SMTP" and "smtp_port" setting in php.ini
J'ai essayé avec le package Mail de PEAR:
Avec le serveur smtp google: mode authentification: pas de message d’erreur
et sans Authentification :
Failed to add recipient: send_to@yahoo.fr [SMTP: Invalid response code received from server (code: 550, response: 5.7.1 ... Relaying denied. IP name lookup failed [210.22.134.2])]
mail() [function.mail]: SMTP server response: 550 5.7.1 <send_to@yahoo.fr>... Relaying denied. IP name lookup failed [210.22.134.2]
pour l'adresse "$from_email ", j'ai mis mon adresse gmail.
avec smtp.yahoo.fr et "$from_email " mon adresse yahoo.fr, j'obtient le message suivant :
mail() [function.mail]: Failed to connect to mailserver at "smtp.yahoo.fr" port 25, verify your "SMTP" and "smtp_port" setting in php.ini
J'ai essayé avec le package Mail de PEAR:
Avec le serveur smtp google: mode authentification: pas de message d’erreur
et sans Authentification :
Failed to add recipient: send_to@yahoo.fr [SMTP: Invalid response code received from server (code: 550, response: 5.7.1 ... Relaying denied. IP name lookup failed [210.22.134.2])]
mony84
Messages postés
68
Date d'inscription
mercredi 19 juillet 2006
Statut
Membre
Dernière intervention
5 octobre 2010
11
19 juil. 2007 à 07:50
19 juil. 2007 à 07:50
j'ai commis une faute la dessus c'est smtp.gmail.com que je dois mettre et avec mode authentification j'obtien le message d'erreur :
Failed to connect to smtp.gmail.com:25 [SMTP: Invalid response code received from server (code: -1, response: )]
Failed to connect to smtp.gmail.com:25 [SMTP: Invalid response code received from server (code: -1, response: )]
mony84
Messages postés
68
Date d'inscription
mercredi 19 juillet 2006
Statut
Membre
Dernière intervention
5 octobre 2010
11
23 juil. 2007 à 03:38
23 juil. 2007 à 03:38
J'ai utilisé la package Mail de PEAR et je me suis connectée à un serveur qui s'appelle smtp.c2.corpease.net. La connexion nécessite une authentifiacation avec le login et le mot de passe. Voici le bout de code correspondant:
include('init-ado.php'); include("Mail-1.1.14\Mail.php"); $connection=ADONewConnection('mysql'); $connection->Connect(dbnode, dbuser,dbpassword, dbinstance); //$connection->debug=true; $email=$_POST['email']; $query=" SELECT * from clients where Email='$email'"; $result=$connection->Execute($query); if ($result==false) die ("failed"); $nombre = $result->RecordCount(); if ($nombre==0){ print("<table > <tr><td bgcolor='#B22222'><font color='#FFFFFF'>This Email doesn't exist.</font> </td></tr> </table>"); } else { $Flogin=$result->Fields('login'); $Fpassword=$result->Fields('password'); $recipients = $email; $headers["From"] = "info@toto.com"; $headers["To"] = $email; $headers["Subject"] = "Your password for toto.com"; $body = "To get connected to http://wwww.toto.com : \n\nYour login : ".$Flogin."\n\nYour password : ".$Fpassword."\n"; $params["host"] = "smtp.c2.corpease.net"; $params["port"] = "25"; $params["auth"] = true; $params["username"] = "info@toto.com"; $params["password"] = "....."; // Create the mail object using the Mail::factory method $mail_object =& Mail::factory("smtp", $params); $send_result = $mail_object->send($recipients,$headers,$body); if (PEAR::isError($send_result)) { print "<table > <tr><td bgcolor='#B22222'><font color='#FFFFFF'> This service is not available now. Please try later.</font>//cad le message n'est pas envoyé </td></tr> </table> "; die($send_result->getMessage()); } else { print "<table > <tr><td bgcolor='#B22222'><font color='#FFFFFF'> An email is sent to this adress : ".$email."</font> </td></tr> </table"; } }
18 juil. 2007 à 10:10
<gras>SMTP server response: 551 User not local . We don't relay on line ... (la même que précédemment)<gras>
Je suis sur windows et j'utilise EasyPhp. Je crois que j'ai pas bien paramétré le fichier php.ini
Est ce que vous pouvez me donner la bonne méthode pour le faire?