Visualizzazione risultati 1 fino 4 di 4

Discussione: PHP Mailer - Problemi con SendMail e SMTP

  1. #1
    L'avatar di EuroSalute
    EuroSalute non è connesso AlterVistiano
    Data registrazione
    12-05-2003
    Messaggi
    969

    Predefinito PHP Mailer - Problemi con SendMail e SMTP

    Buongiorno,

    Ho installato da pochi giorni sul sito uno script in PHP, testandolo ho notato che l'invio di posta dal sito non funzionava.

    Allora dopo svariate ricerche su che cosa potevano essere le cause di non funzionamento, sono arrivato alle seguenti conclusioni:

    --altervista non supporta SMTP e neanche SENDMAIL per l'invio di posta da sito web(con i parametri di altervista).

    Dico questo in quanto ho testato entrambi i metodi...e dopo una modifica ad un file php(aggiungendo una stringa di comando per l'opzioni di invio posta) per accettare l'invio di posta con MAIL, che è il vecchio PHP mailer.

    Ora funziona tutto, ma solo con l'opzione MAIL, che è il vecchio stile del phpMailer.

    Grazie
    Rodolfo.

  2. #2
    Guest

    Predefinito

    Se hai dei problemi posta lo script

  3. #3
    Guest

    Predefinito

    Allora le "email" (no posta) si possono inviare con altervista tramite la funzione mail()...fai qualke ricerca che se ne parla sempre!
    Ciaoooo! ^^

  4. #4
    L'avatar di EuroSalute
    EuroSalute non è connesso AlterVistiano
    Data registrazione
    12-05-2003
    Messaggi
    969

    Predefinito

    Qui è una parte del file in php che permette la selezione dei 3 differenti metodi di invio emails da sito web:

    Codice PHP:
    <select name=\"email_method\">

    <option value=\"smtp\""
    .iif($settings[email_method]=="smtp"," selected=\"selected\"").">SMTP

    <option value=\"sendmail\""
    .iif($settings[email_method]=="sendmail"," selected=\"selected\"").">Sendmail

    /*Ho aggiunto la seguente stringa di comando(che non c'era) per l'opzione MAIL*/
    <option value=\"mail\""
    .iif($settings[email_method]=="mail"," selected=\"selected\"").">Mail

    </select>

    Qui è una porzione del file phpMailer che esegue l'invio delle emails:

    Codice PHP:

    /**
    * Sends mail using the PHP mail() function.
    * @access private
    * @return bool
    */
    function MailSend($header, $body) {
    $to = "";
    for(
    $i = 0; $i < count($this->to); $i++)
    {
    if(
    $i != 0) { $to .= ", "; }
    $to .= $this->to[$i][0];
    }

    if (
    $this->Sender != "" && strlen(ini_get("safe_mode"))< 1)
    {
    $old_from = ini_get("sendmail_from");
    ini_set("sendmail_from", $this->Sender);
    $params = sprintf("-oi -f %s", $this->Sender);
    $rt = @mail($to, $this->EncodeHeader($this->Subject), $body,
    $header, $params);
    }
    else
    $rt = @mail($to, $this->EncodeHeader($this->Subject), $body, $header);

    if (isset(
    $old_from))
    ini_set("sendmail_from", $old_from);

    if(!
    $rt)
    {
    $this->SetError($this->Lang("instantiate"));
    return
    false;
    }

    return
    true;
    }

    *Non serve l'indirizzo del tuo sito*

    Rodolfo
    Ultima modifica di seneca : 06-08-2008 alle ore 17.10.23

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •