- Home
- Categorie
- Coding e Sistemistica
- PHP
- PHP invio mail - E' perfetto ma non invia
-
Prova mettendo l'indirizzo IP della macchina su cui sta il sito. Io stavo su un shared hosted Aruba e facendo cosi' mi funzionava.
-
Ho provato ma niente :bho:
[php]ini_set("SMTP","62.xxx.xxx.xxx"); [/php]Prima le email le inviava tranquillamente. Sto cominciando a pensare che forse ho fatto qualche errore nel mail() perchè non può essere che prima funzionava e adesso no.
-
Chiedo scusa per il post ma non trovo il tasto "EDITA" forse è valido solo dopo pochi minuti.
Aggiungo un questito. Utilizzo questo script per il controllo validita email
[PHP]if(!ereg("^[_a-z0-9-]+(.[_a-z0-9-]+)@[a-z0-9-]+(.[a-z0-9-]+)(.[a-z]{2,3})$", $email))[/PHP]
Tuttavia molti clienti hanno problemi nel farsi accettare le proprie email. Per esempio ci sono email con caratteri maiuscoli che lo script non accetta. Magari ci solo anche altri "bug". Ho cercato in rete e questo sembra essere lo script più "gettonato" però non va bene. Sapete dirmi cosa devo correggere?Grazie
-
Ciao allora io ho un problema identico on funziona la funzione mail() di php. o meglio zio Bill non la vuole!
Kian la mail su che account la invii? su hotmail o live? se si prova a farne uno gmail e ritenta l'invio della mail!
se in questo modo la mail ti arriva hai il mio stesso problema.
Cercando nel web ho trovato che la miscrosft ha il sender-ID cioè vuole che la mail sia verificata altrimenti è spam e la blocca ancora prima d fartela vedere!! (assurdo)
Se qualcuno sa qualcosa in merito non esiti a scrivere sto andando in paranoiaaa:o
-
Dovete inserire un mittente valido, altrimenti vengono automaticametne cestinate da hotmail...
-
si appunto ma come si fa???
-
Allora supponendo che mandi l'email da sito.it metti un email @sito.it e stai sicuro che funziona...
-
niente da fare avevo gia provato e ho appena riprovato...su account gmail la ricevo all'istante su account hotmail no.
Posto il codice per vedere se c'è qualcosa di sbagliato:[PHP]
ini_set("SMTP","smtp.netsons.org"); //imposta smtp di netsons$nome=$_POST['nome'];
$emailmittente=$_POST['email'];
$oggetto=$_POST['cmbOggetto'];
$messaggio=$_POST['messaggio'];$destinatario="[email protected]";
$headers = "From: Images Upload<noreply>\r\n"; //Il tuo nome
$headers .= "X-Sender: <noreply>\r\n"; //Il mittente
$headers .= "X-Mailer: PHP\r\n"; //mailer
$headers .= "X-Priority: 3\r\n"; //1 UrgentMessage, 3 Normal
$headers .= "Return-Path: [email protected]\r\n"; // Return-path
$headers .= "Content-Type: text/html;\r\n";
$headers .= "X-AntiAbuse: Servername - {".$_SERVER['SERVER_NAME']."}\r\n";
$headers .= "Email utente: ".$emailmittente."\r\n"; //info aggiuntive$ris=mail($destinatario, $oggetto, $messaggio, $headers);
[/PHP]nemmeno come spam arriva! viene proprio bloccata su hotmail
-
Images Upload<noreply>
ti sembra un mittente valido?
-
ho provato con:
[PHP]
$headers = "From: Images Upload[email protected]\r\n"; //Il tuo nome
$headers .= "X-Sender: [email protected]\r\n"; //Il mittente
[/PHP]non va lo stesso...:(
-
sui server aruba funzionani...dai netsons no... evidentemente netsons non ha qulacosa che verifichi i propri domini mentre aruba si e hotmail lo blocca
-
Allora io in una pagina php invio 2 email insieme.
-Admin mail: destinata a me [email protected] ed è di aruba
-Welcome email: destinata al cliente $emailPrima questo php non prevedeva l'invio di una mail al cliente e funzionava. Da quando ho aggiunto l'invio della mail al cliente non funziona più. Il fatto strano è che ha funzionato per 2 giorni - inviava le 2 email - e poi blackout morto!
Ho un'altra pagina dove invio tramite un mailer-system email ai clienti. Le variabili sono corrette e lo script funziona ma l'email non arriva nemmeno se invio alla mail aruba del sito.
Sono confuso
-
SI guarda è un casino assurdo non ci sto capendo più niente... su un server aruba ho risolto inserendo la funzione iniset() di php stesso identico codice su un server di netsons non funziona (NOTARE : non funziona solo verso hotmail)
-
Sono felicissimo di comunicare che ho risolto il problema
Mi sono riscritto tutta la pagina php da zero e adesso funziona. Ho cercato di controllare i due file e sembrano identici solo che uno funziona e l'altro no. Credo che forse si trattasse di qualche if() non chiuso bene {}. Adesso la pagina mi invia tranquillamente l'email all'Admin, l'email di benvenuto al cliente, mi salva tutti i dati nel database, effettua il pagamento con paypal prendendo nome articolo, descrizione, costo (...) dal db.
Soddisfattissimo!
PERO sono deluso dal fatto che la "Welcome email" al cliente arriva solo se questo ha gmail. Alle caselle libero non arriva alcun messaggio nemmeno nella posta indesiderata / spam. Ne sapete qualcosa?
-
Certo Kian è il problema che ho io! di cui ho accennato qualcosa nei post precedenti. Cercando nel web ho trovato che anche libero come hotmail se riceve una mail non verificata la elimina prima ancora di fartela vedere!
Da host Aruba (che evidentemente sono certificati) la mail arriva tranquillamente su qualsiasi account, mentre da Netsons non arriva verso hotmail e libero.
Ho letto che bisogna verificare il server da cui proviene la mail col protoccolo SPF e pe rquanto riguarda la Microsoft con il Sender-ID.
Ho fatto alcune prove ma non ci capisco niente :bho: .
Se riesci a trovare qualcuno in grado di risolvere questo problema sarebbe supendo. ciaooo
-
Io ho Aruba e non arriva lo stesso
-
strano...perchè a me stesso codice da aruba va ma da netsons no..ti posto dei parametri che ho messo negli headers:
[PHP]
ini_set("SMTP","localhost"); //imposta smtp di aruba$messaggio = $_POST['messaggio'];
$oggetto=$_POST['oggetto'];$header="From: nomechevuoi [email protected]\r\n";
$header.= "X-Sender: [email protected]\r\n"; //Il mittente
$header.= "X-Mailer: PHP/".phpversion();
$header.= "Return-Path: [email protected]\r\n"; // Return-path
[/PHP]prova con questi se non li hai gia messi! al posto di noreply@ruba puoi mettere quello che vuoi
-
Ragazzi credo essere arrivato al punto di mettermi l'anima in pace. Il problema non è lo script, non è la funzione mail(), non è l'ini del server ma, come diceva xfattor89, è un problema di Libero (da me testato) e Hotmail.
L'ho scoperto registrandomi ad un forum con phpbb. L'email di attivazione l'ho richiesta una decina di volte e non arrivava mai nemmeno nella cartella spam. Ho dovuto cambiare con una mail gmail per risolvere il problema.
Ma vi pare una cosa possibile!? Come può essere che Libero sia irraggiungibile a tutte le mail generate da php? Internet è quasi tutto php :S Comunque questa cosa si verifica da poco tempo. Prima era tutto regolare... ma che succede!?
-
Ve l'avevo detto..semplicemente che hotmail e libero utilizzano da poco un anti-spam e per sorpassare questo blocco il provider da cui proviene la mail deve essere verificato con il sender-ID o il protocollo SPF. Putrtoppo noi non dobbiamo fare niente, ma è il nostro hosting che deve farsi avanti e risolvere il problema.
Ho contattato Netsons personalmente e dopo alcuni chiarimenti mi hanno detto che stanno provvedendo a questo problema.
Per chi ha lo stesso problema l'unico modo è contattare l'assistenza del proprio servizio di hosting e dire loro l'esatto problema!! io attendo! vediamo un po cosa riescono a fare..
-
Stavo per aggiungere la fatturazione dei clienti php+sql quando mi sono reso conto che l'email adesso funziona! Come è bello vedere che tutto quadra
LIBERO.IT Funziona