Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/04/2011, 17:33
Hokasito
 
Fecha de Ingreso: abril-2011
Mensajes: 3
Antigüedad: 13 años, 1 mes
Puntos: 0
Pregunta Envío de correo mediante SMTP con PHPMailer

Hola a todos.

Me estreno en Foros del Web con este tema, y vengo aquí para quedarme... :)

Tengo un problema con una página web que he creado con un compañero. Queremos que al registrarte en nuestra página, el sistema envíe un mail de bienvenida al usuario mediante SMTP, con una cuenta de correo que creamos para ello. Para implementar esta funcionalidad hemos usado la librería PHPMailer.

Sin embargo cuando el usuario se registra satisfactoriamente, se muestra un mensaje en el que se muestra que la conexión con el servidor SMTP ha sido rechazada. No sabemos si es un problema de código o es que el hosting que usamos tiene capados los puertos de correo saliente (nos decantamos más por lo segundo, pero no lo tenemos claro).

Aquí adjunto el código que genera la conexión con el servidor, crea el correo y lo envía (por seguridad y privacidad, he puesto algunos asteriscos en algunos campos, en el código real están bien puestos).

Código PHP:
<?php
function sendMessage($email$name$surname$password) {
    
    
$mail = new PHPMailer();
    
$mail->Mailer "smtp";
    
$mail->Host "smtp.1and1.es";
    
$mail->Port 587;
    
$mail->SMTPAuth true;
    
$mail->Username "registration@*******.com";
    
$mail->Password "*******";
    
$mail->From "*******@*******.com";
    
$mail->FromName "My page";
    
$mail->Subject "Welcome to my page";
    
$mail->Body "<p>Welcome to my page, </p>"$name.
            
"!<p>Your account has been created. Your e-mail is <b>" $email .
            
"</b> and your password is <b>"$password "</b></p>" .
        
"<p>Greetings.</p>";
    
$mail->AddAddress($email$name ' ' $surname);
    
$mail->IsHTML(true);

    if(!
$mail->Send()) {
        echo 
"Mailer Error: " $mail->ErrorInfo;
    } else {
        echo 
"Message has been sent.";
    }
}

?>
Y la llamada a esa función sería así:

Código PHP:
 sendMessage($mail$name$surname$pass); 
¿A qué se puede deber nuestro problema? ¿Alguna idea? ¡Gracias!