• User Attivo

    Ciao Kian,

    sei sicuro che la variabile SMTP sia definita correttamente?
    Se non lo e' in php.ini, la puoi definire al volo con

    [php]ini_set("SMTP","mail.domain.com");[/php]

    sostituendo l'indirizzo del server con quello da te utilizzato.

    :ciauz:


  • User Attivo

    Grazie delle risposte

    @Thedarkita: si, già fatto ed è giusta

    @olaola: cavolo non ci avevo pensato. Sono su aruba e pensavo che gli hosting professionali sistemassero queste cose. Comunque ho provato con
    [PHP]ini_set("SMTP","smtp.miosito.it"); [/PHP]
    che sarebbero i dati per il server posta in uscita (li utilizzo su outlook). Ho inserito questa funzione all'interno della pagina di invio mail. Nonostante questo l'email non parte :bho:


  • User Attivo

    Prova mettendo l'indirizzo IP della macchina su cui sta il sito. Io stavo su un shared hosted Aruba e facendo cosi' mi funzionava.


  • User Attivo

    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.


  • User Attivo

    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


  • User

    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


  • ModSenior

    Dovete inserire un mittente valido, altrimenti vengono automaticametne cestinate da hotmail...


  • User

    si appunto ma come si fa???


  • ModSenior

    Allora supponendo che mandi l'email da sito.it metti un email @sito.it e stai sicuro che funziona...


  • User

    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


  • ModSenior

    Images Upload®<noreply>

    ti sembra un mittente valido?


  • User

    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...:(


  • User

    sui server aruba funzionani...dai netsons no... evidentemente netsons non ha qulacosa che verifichi i propri domini mentre aruba si e hotmail lo blocca


  • User Attivo

    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 $email

    Prima 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😢


  • User

    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)


  • User Attivo

    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?


  • User

    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


  • User Attivo

    Io ho Aruba e non arriva lo stesso


  • User

    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


  • User Attivo

    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!?