Problema con el uso de PHPMailer para SMTP

He utilizado PHPMailer para SMTP y no hay problema en enviar el correo con el error «Mailer Error: La siguiente dirección De error: [email protected]»

Mi código es el siguiente:

        $mail = new PHPMailer();

        $mail->IsSMTP();                                   //send via SMTP

        $mail->Host = "localhost;"; //SMTP servers

        $mail->SMTPAuth = true;     //turn on SMTP authentication

        $mail->Username = "";  //SMTP username

        $mail->Password = ""; //SMTP password



        $mail->From = $email_address;

        $mail->FromName = $email_address;

        $mail->AddAddress($arrStudent[0]["email"]);

        $mail->WordWrap = 50;                              //set word wrap

        $mail->IsHTML(true);                               //send as HTML



        $mail->Subject = "Subject";

        $theData = str_replace("\n", "<BR>", $stuff);

        $mail->Body = $theData; //"This is the <b>HTML body</b>";

        $mail->AltBody = $stuff;




        if (!$mail->Send()) {

            $sent = 0;

            echo "Mailer Error: " . $mail->ErrorInfo;

            exit;

        }

he investigado todo y cuando me depuración dentro de class.smtp.php he encontrado el error en la función «get_lines()» es devolver el valor de error «550 error de Autenticación»

El código anteriormente estaba trabajando bien, me pregunto cómo este problema vino de repente.
Desesperado por un poco de ayuda.

Gracias,
Biplab

  • 550 Authentication failed se ve bastante claro. Tal vez la cuenta SMTP se utiliza para esto tiene un nombre de usuario y contraseña después de todo
  • Espera, ¿estás diciendo que los mensajes de error que realmente significan algo? Estoy sorprendido, SORPRENDIDO! 😉
  • pensé mismo también….pero estaba funcionando bien, antes con el mismo código y el proveedor de espacio de no dar esta información debido a su problema.
  • como se dijo – » tal vez la cuenta SMTP se utiliza para esto tiene un nombre de usuario y contraseña después de todo `
  • hmm…tal vez…no sé, debe consultar con el proveedor de espacio o de alguien más?
  • Me enfrento a los mismos, el problema era que estaba intentando desde mi localhost y el proxy de bloqueo

3 Kommentare

  1. 1
    public function sendEmail ( $subject, $to, $body, $from = FALSE ) {
        require_once('mailer.class.php');
        $mailer = new PHPMailer();
        //do we use SMTP?
        if ( USE_SMTP ) {
            $mailer->IsSMTP();
            $mailer->SMTPAuth = true;
            $mailer->Host = SMTP_HOST;
            $mailer->Port = SMTP_PORT;
            $mailer->Password = '';
            $mailer->Username = '';
            if(USE_SSL)
                $mailer->SMTPSecure = "ssl";
        }
    
        $mailer->SetFrom($from?$from:ADMIN_EMAIL, ADMIN_NAME);
        $mailer->AddReplyTo ( ADMIN_EMAIL, ADMIN_NAME );
    
        $mailer->AddAddress($to);
        $mailer->Subject = $subject;
        //$mailer->WordWrap = 100;
        $mailer->IsHTML ( TRUE );
        $mailer->MsgHTML($body);
    
        require_once('util.class.php');
        $mailer->AltBody  =  Util::html2text ( $body );
    
        //$mail->AddAttachment("images/phpmailer.gif");      //attachment
        //$mail->AddAttachment("images/phpmailer_mini.gif"); //attachment
    
        if ( ! $mailer->Send() ) {
            return FALSE;
        }
        else {
            $mailer->ClearAllRecipients ();
            $mailer->ClearReplyTos ();
            return TRUE;
        }
    }

    He usado como que… SetFrom debe ser utilizado en lugar de a Partir de… ese es tu error amigo… :))

    • no tio….no hay ninguna SetFrom función en mi clase PHPMailer…es evidente que hay $De la variable en la que hay..
  2. 0

    trate de añadir belowe línea de php.ini

    extension=php_openssl.dll

    reiniciar y probar de nuevo

  3. 0

    Estoy usando YII del Correo con PHPMailer, y esto funciona para mí:

    $mail = Yii::createComponent('application.extensions.mailer.EMailer');
    $mail->Username           = $this->SMTP_USERNAME;  //SMTP username
    $mail->Password           = $this->SMTP_PASSWORD; //SMTP password
    $mail->SMTPAuth           = true;
    $mail->From               = $this->fromAddress;
    $mail->Host               = $this->SMTP_SERVER_ADDRESS;
    $mail->FromName           = $this->fromName;
    $mail->CharSet            = 'UTF-8';
    $mail->Subject            = Yii::t('mailer', $this->subject);
    $mail->Body               = $this->message;
    $mail->AddReplyTo($this->toAddress);
    $mail->AddAddress($this->toAddress);
    $mail->IsSMTP(true);
    $mail->IsHTML(true);
    $mail->Send();

    Espero que ayude?

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea