2010-01-02 3 views
12

J'utilise la dernière WAMP et je reçois quand je tente d'envoyer des e-mails:envoi des e-mails avec WAMP

Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\wamp\www\main\createaccount.php on line 8 

livraison du message a échoué ...

Le message:

$to = "[email protected]"; 
$subject = "Hi!"; 
$body = "Hi,\n\nHow are you?"; 
if (mail($to, $subject, $body)) { 
    echo("<p>Message successfully sent!</p>"); 
} else { 
    echo("<p>Message delivery failed...</p>"); 
} 

Avez-vous besoin de télécharger un "mail server" aussi?

Aidez-nous s'il vous plaît.

Répondre

1

Vous n'exécutez pas de serveur SMTP sur votre ordinateur, mais vous n'êtes pas obligé de le faire. Il suffit de définir SMTP à un serveur smtp ouvert par exemple:

ini_set('SMTP', 'smtp.yourisp.com'); 

Jetez un oeil à votre page d'accueil de votre FAI ou http://www.e-eeasy.com/SMTPServerList.aspx pour la liste des serveurs SMTP.

Si vous disposez d'un programme de messagerie de bureau, vous pouvez utiliser la même adresse que celle utilisée pour le courrier sortant.

+0

thanksman, essayé beaucoup de serveur pas, mais je reçois le même message d'erreur, peut-être un autre programme je cours utilisent le port 25;/ – Jorm

+0

sommes sûrs que vous mettez le 'ini_set' avant la fonction' mail' et avez-vous essayé le serveur SMTP de votre propre FAI? –

0

Je pense que votre serveur de messagerie sortant (SMTP) n'est pas configuré dans votre fichier php.ini.

Jetez un oeil à ceci:

http://email.about.com/od/emailprogrammingtips/qt/Configure_PHP_to_Use_a_Remote_SMTP_Server_for_Sending_Mail.htm

également hotmail ne vous permet pas d'utiliser leurs serveurs de messagerie. Vous devriez utiliser Yahoo ou Gmail. Etes-vous sûr que ces serveurs ont un programme de messagerie installé sur eux?

+1

Au moins, Gmail nécessite une connexion protégée par SSL, ce qui n'est pas une option avec '' vieux ('' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' ' –

+0

@Tatu Ulmanen: Merci :) Je ne pense pas yahoo fait, d'après ce que je me souviens. –

0

Si non, c'est votre problème. Par exemple, XAMPP est livré avec un programme de messagerie appelé Mercury que vous devez démarrer avant de pouvoir envoyer du courrier via le serveur.

14

Cela fonctionne pour moi et devrait fonctionner pour vous: Utilisez Fake Sendmail et un serveur de messagerie Webhost (à savoir - Godaddy, 1and1, etc.). 1.12) Téléchargez le fichier zip sendmail et extrayez-le dans C: \ Wamp \ bin \ sendmail (pour les besoins de cet exemple).

2.) Ouvrez le fichier C: \ wamp \ bin \ sendmail \ sendmail.ini et définir les paramètres suivants aux exigences de votre serveur de messagerie (le mien sont ci-dessous):

smtp_server=mail.yourdomain.com 
smtp_port=26 
smtp_ssl=none 
;default_domain=yourdomain.com 
[email protected] 
auth_password=smtppassword 
;pop3_server= 
;pop3_username= 
;pop3_password= 
;force_sender= 
;force_recipient= 

3.) Définissez le chemin de sendmail .exe dans votre fichier php.ini.

[mail function] 
; For Win32 only. 
SMTP = 

; For Win32 only. 
sendmail_from = 

; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). 
sendmail_path = "C:\wamp\bin\sendmail\sendmail.exe -t" 

4.) Redémarrez Wampserver.

Vous pourriez avoir du succès avec Gmail, mais il y a quelques modifications supplémentaires pour le faire fonctionner. Je préfère utiliser le serveur de messagerie de l'hébergeur où je télécharge mon code.

+0

Exactement ce dont j'avais besoin pour lier mon dev. environnement avec le compte GoDaddy réel. Très appréciée ! –

+0

+1 Tirer sur un fil de 2 ans, mais cela m'a juste sauvé. – msanford

+0

CETTE ŒUVRE! Je vous remercie. Cela m'a sauvé. Tout à coup le serveur Wamp64 arrête de travailler sur le développement localhost et cela m'a sauvé. – GunWanderer

0

Suivez cet article, cela fonctionne si vous avez un compte Gmail. ou au moins tout compte de messagerie électronique dans lequel vous connaissez le serveur, le port et ce genre de choses.

Send Email From localhost

0

ici est une autre solution - WAMP send Mail using SMTP localhost


Gardez à l'esprit à chaque fois, après avoir modifié php.ini,

vous devez redémarrer WAMP

(!!)

ps dans php.ini, je l'ai utilisé:

SMTP = localhost 
smtp_port = 25 
sendmail_from = [email protected] 

ou si Oyu ne peux pas php.ini modifier, essayez d'insérer ces lignes dans votre script php.

ini_set("SMTP", "localhost"); 
ini_set("smtp_port", "25"); 
ini_set("sendmail_from", "[email protected]"); 
+0

Cela ne fonctionne pas. – Draken