Imansible connettersi al server di posta alla port "localhost" 25

Continuo a ricevere questo errore quando provo a submit una e-mail in PHP:

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\dressoholic\register.php on line 50 

il mio php.ini si presenta così:

 [mail function] ; For Win32 only. ; http://php.net/smtp SMTP = localhost ; http://php.net/smtp-port smtp_port = 25 ; For Win32 only. ; http://php.net/sendmail-from sendmail_from = [email protected] 

Sto usando il mio laptop come server .. Cosa sto facendo male? Grazie.

È necessario eseguire un server di posta localmente. Se questo è Unix, abilitare sendmail Se si tratta di Windows, installare il componente Simple Mail Transfer Server (non sono sicuro se il nome è corretto) di IIs. Ad esempio per Windows 2003 seguire questo: http://msdn.microsoft.com/en-us/library/8b83ac7t.aspx

Per l'invio di mail viene utilizzata la function di posta php. Ma la function di posta richiede un server SMTP per l'invio di e-mail. dobbiamo menzionare l'host SMTP e la port SMTP nel file php.ini. Una volta completata correttamente la configuration dei server SMTP, le mail verranno inviate correttamente tramite script php.

Su Windows, quasi tutti i pacchetti AMPP (Apache, MySQL, PHP, PHPmyAdmin) non includono un server di posta (ma quasi tutti gli linux nudi hanno!). Quindi, quando usi PHP sotto Windows, devi configurare un server di posta!

Imo lo strumento migliore e più semplice questo: http://smtp4dev.codeplex.com/

SMTP4Dev è un semplice strumento server di posta su un solo file che raccoglie le mail che invia (quindi non invia realmente la posta, ma le mantiene solo per lo sviluppo). Strumento perfetto

Se stai eseguendo la tua applicazione solo su localhost e non è ancora triggers, credo che sia molto difficile submit posta usando questo.

Una volta inserita la tua applicazione online, credo che questo problema dovrebbe essere risolto automaticamente. Bbut credo che ini_set() ti aiuti a cambiare i valori in php.ini durante il tempo di esecuzione.

Prima di tutto, non sei obbligato a usare un SMTP sul tuo localhost, se cambi quella voce localhost nel nome DNS del MTA dal tuo fornitore di servizi Internet (che ti permetterà di inoltrare la posta) functionrà subito, quindi no scherzare con il tuo servizio di posta elettronica. Prova a utilizzare i server SMTP dei tuoi fornitori, functionrà immediatamente.

La function di posta PHP può submit email in 2 scenari:

un. Prova a submit e-mail tramite il programma sendix di unix A linux eseguirà il programma "sendmail", metterà tutti i parametri su sendmail e tutto il resto.

O

b. Connettiti al server di posta (usando il protocollo smtp e l'host / port / username / pass da php.ini) e prova a submit email.

Se php non è in grado di connettersi al server di posta elettronica, verrà visualizzato un avviso (e viene visualizzato tale tipo di lavoro nei registri) Per risolverlo, installare il server smtp sul computer locale o utilizzare qualsiasi server disponibile. Come configurare / configurare smtp che puoi trovare su php.net

php consente di submit email da localhost ma questo problema verrà risolto se si inserisce il progetto sul server. o se si desidera controllare se la mia e-mail invia o no, allora è necessario scaricare smtp4dev e installarlo. Questo ti darà un messaggio se la tua e-mail è stata inviata correttamente o se c'è un problema nel tuo codice.