problemi ad inviare mail in locale con php

  • Creatore Discussione Creatore Discussione signo84
  • Data di inizio Data di inizio

signo84

Nuovo Utente
2 Feb 2009
8
0
0
Ciao a tutti,sono alle prime armi con php,
ho configurato un webserver locale per visualizzare sul mio pc i file php che creo. Riesco appunto a visualizzare sul browser i file php che lancio con l'indirizzo http://localhost/nome_file.php, ma non riesco a inviare mail con la funzione mail().
Per farlo devo modificare qualcosa nel file php.ini ?
devo modificare qualcos'altro?
devo modificare il file httpd.conf?

potete indicarmi come fare?
grazie!
 
Ultima modifica:
Nel PHP.ini devi specificare l'SMT del tuo provider di connessione, ad esempio:
PHP:
smtp = smpt.tiscali.it
 
Ciao, nel file php.ini c'è questo codice:


[mail function]
; For Win32 only.
SMTP = localhost
smtp_port = 25

; For Win32 only.
;sendmail_from = me@example.com


quindi al posto di localhost devo mettere il mio server di connessione e al posto di me@example.com metto l'indirizzo mail del mittente, quindi il mio?

poi quando avvio il file php, l'invio della mail viene effettuato tramite outlook express o dalla casella postale su web?

grazie
 
  • esatto
  • l'invio non avviene tramite outlook ma tramite la funzione mail(), si occupa di tutto php
 
ho configurato correttamente il file php.ini in questo modo:


[mail function]
; For Win32 only.
SMTP = out.virgilio.it
smtp_port = 25

; For Win32 only.
;sendmail_from = signo84@virgilio.it

----------------------------------------------------------

ma lanciando il file php per l'invio, la mail al destinatario non arriva....
è giusta la sintassi del file .php ?


<?php
$destinatario = "signo84@virgilio.it";
$oggetto = "email di prova";
$messaggio = "Ecco la mia prima email";
mail($destinatario, $oggetto, $messaggio);
echo "email inviata";
?>

praticamente quando lancio il file mi compare a video solo "email inviata" ma in realtà sulla casella postale del destinatario non c'è alcuna mail...
 
ho configurato correttamente il file php.ini in questo modo:


[mail function]
; For Win32 only.
SMTP = out.virgilio.it
smtp_port = 25

; For Win32 only.
;sendmail_from = signo84@virgilio.it

----------------------------------------------------------

ma lanciando il file php per l'invio, la mail al destinatario non arriva....
è giusta la sintassi del file .php ?


<?php
$destinatario = "signo84@virgilio.it";
$oggetto = "email di prova";
$messaggio = "Ecco la mia prima email";
mail($destinatario, $oggetto, $messaggio);
echo "email inviata";
?>

praticamente quando lancio il file mi compare a video solo "email inviata" ma in realtà sulla casella postale del destinatario non c'è alcuna mail...
 
ho provato ma non va lo stesso !!!!!!

perchè non mi va? cosa posso fare per farlo andare?
 
ma out.virgilio.it è l'smtp del tuo provider di connessione o quello del tuo provider di posta?
 
dovrebbe essere il provider di posta...ho cercato su internet e il server smtp di virgilio è quello...

invece quale sarebbe il provider di connessione?
 
quello presso il quale hai l'abbonamento per la connessione ad internet.
 
Io ho lo stesso problema... il file php.ini l'ho modificato così:

; For Win32 only.
SMTP = smtp.tele2.it
smtp_port = 25

; For Win32 only.
;sendmail_from = la mia email di hotmail

Il punto e virgola rosso devo toglierlo?
ho il seguente errore:
Warning: mail() [function.mail]: "sendmail_from" not set in php.ini or custom "From:" header missing in C:\Program Files\xampp\htdocs\acquisto2.php on line 41

la riga 41 è la riga in cui ho inserito la funzione mail()
potete aiutarmi?Grazie
 
Se usate un smtp esterno, forse non vi legge correttamente gli header. Senza specificare mail di sending, provate così:

PHP:
$mail_utente ="MAIL DESTINATARIO";
$header= "From: NOME MITTENTE<EMAIL MITTENTE>\r\n";
$header .= "Reply-To: INDIRIZZO<EMAIL>\r\n";
$header .= "X-Mailer: PHP/" . phpversion();
$subject ="TITOLO EMAIL";
$message ="MESSAGGIO";
mail($mail_utente, $subject, $message, $header);
 

Discussioni simili