Pec Aruba & PHP Mailer

Pec Aruba & PHP Mailer

phpmailerPer chi ha provato ad inviare pec via web con phpmailer seguendo il tutorial di aruba circa la configurazione del server SMTP probabilmente si è trovato nella condizione, come me, di pensare di cambiare mestiere e di andare a fare il carrozziere piuttosto che il ragazzo che consegna i giornali con la bicicletta.

Scherzi a parte e tornando al nostro problema, senza perdere altro tempo posto il codice funzionante con qualche commento. Sono a disposizione per chiarimenti o per riflessioni.


<?php 
  public function sendPec($email) {
    $mail = new PHPMailer();
    $mail->IsSMTP();
    // Da abilitare sontanto in fase di sviluppo.
    $mail->SMTPDebug = 4;
    $mail->Debugoutput = 'html';
    */
    $mail->SMTPAuth = true;
    $mail->SMTPSecure = 'tsl';
    $mail->SMTPOptions = array(
      'ssl' => array(
        'verify_peer' => false,
        'verify_peer_name' => false,
        'allow_self_signed' => true
      )
    );
    $mail->Timeout = '60';
    /*
    Alcuni fornitori bloccano il traffico SMTP in uscita su IPv6.
    Per evitare questo utilizziamo la funzione gethostbyname()
    */
    $mail->Host = gethostbyname('smtps.pec.aruba.it');
    $mail->Port = 587;
    $mail->Username = 'test@pec.it';
    $mail->Password = 'LA-TUA-PASSWORD';
    $mail->AddAddress($email, '');
    $mail->AddReplyTo("noreply@iltuodominio.it", "Do not reply");
    $mail->SetFrom('test@pec.it', 'Email Pec di Testing');
    $mail->IsHTML(true);
    $mail->Subject = "Oggetto della email che si vuole inviare";
    $mail->Body = "

    $mail->Body = "<h1>Test invio Aruba Pec da PHPMailer con html.</h1>";
    if(!$mail->Send()){
      echo 'Mailer error: ' . $mail->ErrorInfo;
      return false;
    } else {
      return true;
    }
  }
?>
Web Hosting

2 Comments

Emanuele

18 febbraio 2017 at 11:26 am

Connection: opening to –.—.—.–:587, timeout=60, options=array ( ‘ssl’ => array ( ‘verify_peer’ => false, ‘verify_peer_name’ => false, ‘allow_self_signed’ => true, ),)
Connection: opened
SMTP -> get_lines(): $data is “”
SMTP -> get_lines(): $str is “”
SERVER -> CLIENT:
SMTP NOTICE: EOF caught while checking if connected
Connection: closed
SMTP Error: Could not authenticate.
SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting

    michele

    michele

    21 febbraio 2017 at 10:09 am

    Salve Emanuele,
    provaa decommentare le righe 6 e 7
    $mail->SMTPDebug = 4;
    $mail->Debugoutput = ‘html’;
    e posta il risultato, a me funziona tutt’ora…

Leave a Reply

WP to LinkedIn Auto Publish Powered By : XYZScripts.com