Foros del Web » Programando para Internet » PHP »

Problema con PHPMAiler y 1and1

Estas en el tema de Problema con PHPMAiler y 1and1 en el foro de PHP en Foros del Web. Hola, estoy intentando configurar PHPMailer para enviar mails autenticados con 1and1, pero me da errores. Este es el código Código PHP:          require_once( 'PHPMailer/class.phpmailer.php' ); ...
  #1 (permalink)  
Antiguo 13/02/2011, 05:57
 
Fecha de Ingreso: mayo-2008
Mensajes: 70
Antigüedad: 16 años
Puntos: 0
Problema con PHPMAiler y 1and1

Hola, estoy intentando configurar PHPMailer para enviar mails autenticados con 1and1, pero me da errores. Este es el código

Código PHP:
        require_once('PHPMailer/class.phpmailer.php');
        
$mail = new PHPMailer();
        
$body "Aqui va el body";
        
$mail->IsSMTP(); // telling the class to use SMTP
        
$mail->Host "smtp.1and1.com"// SMTP server
        //$mail->SMTPAuth = true; // enable SMTP authentication
        //$mail->Port = 587; // set the SMTP
        
$mail->Username "[email protected]";  //username
        
$mail->Password "mipassword"//password
        
$mail->SetFrom('[email protected]''Nombre'); 
        
$mail->AddReplyTo('[email protected]''Nombre');
        
$mail->Subject "Subject";
        
$mail->AltBody "Opcional"// optional, comment out and test
        
$mail->MsgHTML($body);
        
$mail->AddAddress('[email protected]''Destinatario');
        
        if(!
$mail->Send()) { 
            echo 
"Mailer Error: " $mail->ErrorInfo
        } else { 
            echo 
"Message sent!"
        } 
Tal y como está ahora sí funciona, pero si quito los comentarios a las dos líneas de autenticación me da un error y no envía el mail.

Alguien me puede echar una mano?
  #2 (permalink)  
Antiguo 22/06/2012, 12:25
Avatar de manyblue  
Fecha de Ingreso: marzo-2008
Mensajes: 329
Antigüedad: 16 años, 1 mes
Puntos: 10
Respuesta: Problema con PHPMAiler y 1and1

has conseguido conectar con 1&1 ???? yo lo estoy intentando.
Con gmail no tengo problemas.

Vanos a ver si entre los dos lo conseguimos pues tengo cuentas en 1&1 que no me gustaria pasar a arsys.

He visto por ahi que no solo tienes que tener el archivo que envia el correo, comenzamos con tu ejemplo no, ademas los dos archivos fundamentales de phpmailer:

class.smtp.php
class.phpmailer.php

No se si funcionara prueba tu primero a ver.

Bueno a lo que iva el articulo dice que en el archivo "class.phpmailer,php" hay que buscar esta linea:

Código PHP:
 public function IsSMTP() {
    
$this->Mailer 'smtp';
  } 
por esta otra

Código PHP:
 public function IsSMTP() {
       
$this->IsSendmail();

luego en el archivo "class.smtp.php" esta linea

Código PHP:
$host "ssl://smtp.gmail.com";
 
$port 465
que es para gmail por

Código PHP:
 $host "ssl://smtp.1and1.es";
 
$port 587
mi "enviar_contacto.php"


Código PHP:
<?php
$dia
=date("d.m.Y");
$hora=date("H:i:s");
$nombre $_POST['nombre'];
$email $_POST['email'];
$asunto $_POST['asunto'];
$telefono $_POST['telefono'];
$texto $_POST['texto'];
$mensaje "
 Este mensaje se a enviado desde el formulario de contacto de WWW.MIDOMINIO.COM<br> 
 El dia: $dia a las: $hora<br><br>
----------------------------------------------------------------------------<br><br>
 Nombre: $nombre<br><br>
 Email:  $email<br><br>
 Telefono:  $telefono<br><br>
 Asunto:  $asunto <br><br>
 Texto:  $texto<br><br>
 ----------------------------------------------------------------------------<br><br>
 "
;
    require(
"class.phpmailer.php");
 
//------------------------------------------------------
    
$correo_destino="[email protected]"//a que correo llega
    
$nombre_destino="FORMULARIO DE CONTACTO MIDOMINIO.COM"//nombre de quien recibe
    
$correo_emisor="info@tucorreo1&1.com"//tu correo
    
$nombre_emisor="www.midominio.com"//tu nombre
    
$contrasena="pass"//contraseña de tu usuario
//--------------------------------------------------------
    
$mail = new PHPMailer();
    
$mail->isSendMail(); // Envia el correo via SMTP
    
$mail->SMTPAuth true// Enciende la autenticacion SMTP
    
$mail->Username $correo_emisor// Usuario SMTP
    
$mail->Password $contrasena// Contrasena SMTP    
    
$mail->From $correo_emisor;
    
$mail->FromName $nombre_emisor//Nombre del que envia el correo
    
$mail->AddAddress($correo_destino,$nombre_destino);
    
$mail->AddReplyTo($correo_emisor,$nombre_emisor);
    
$mail->WordWrap 50// Word wrap
    
$mail->IsHTML(true); // Enviar como HTML
    
$mail->Subject "FORMULARIO DE CONTACTO"//Asunto
    
$mail->Body $mensaje//Cuerpo en HMTL
    
$mail->AltBody "
 El mensaje se a enviado el dia: $dia a las: $hora<br><br>
----------------------------------------------------------------------------<br><br>
 Nombre: $nombre<br><br>
 Email:  $email<br><br>
 Telefono:  $telefono<br><br>
 Asunto:  $asunto <br><br>
 Texto:  $texto<br><br>
 ----------------------------------------------------------------------------<br><br>
 "
//Cuerpo en Texto plano
    
if(!$mail->Send()){
      echo 
"Error: " $mail->ErrorInfo;
    }else{
      echo 
"OK, SEND MAIL";
    }
?>
a mi en mi server no me va me puse en contacto con ellos y no me aclaran nada.

Un saludo

Última edición por manyblue; 22/06/2012 a las 13:01
  #3 (permalink)  
Antiguo 22/06/2012, 13:33
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: Problema con PHPMAiler y 1and1

si es un hosting gratuito es probable que tenga el SMTP bloqueado, y el puerto 25 (entre otros), gmail funciona porque usa otro puerto, pero si los del hosting deciden bloquear todos (excepto el 80 obvio) no abría forma de que salga ningún mensaje.
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #4 (permalink)  
Antiguo 22/06/2012, 14:09
 
Fecha de Ingreso: septiembre-2005
Mensajes: 840
Antigüedad: 18 años, 7 meses
Puntos: 84
Respuesta: Problema con PHPMAiler y 1and1

para 1and1 teneis que poner :

$mail->IsSendmail() ;

y como host solo poner smtp.1and1.es
__________________
» Presupuesto Pagina Web
  #5 (permalink)  
Antiguo 23/06/2012, 00:03
Avatar de manyblue  
Fecha de Ingreso: marzo-2008
Mensajes: 329
Antigüedad: 16 años, 1 mes
Puntos: 10
Respuesta: Problema con PHPMAiler y 1and1

Perdona que sea tan torpe, pero no lo cojo bien.

phpmailer tiene dos archivos importantes:

class.phpmailer,php y class.smtp.php

Partimos de la base que hemos descargado phpmailer completo y virgen como digo yo, cogemos esos dos archivos y los metemos en el directorio web, por ejemplo www.

Ahora para gmail tengo que tocar o variar solo el archivo class.smtp:

Código PHP:
$host "ssl://smtp.gmail.com";
 
$port 465
El resto es cuestion de ver enviar_correo.php

Para 1&1 no lo se todavia, no lo he logrado.
Los manuales que he visto me dicen que debo variar los dos archivos de phpmailer

class.smtp.php

$host = "ssl://smtp.1and1.es";
$port = 587;


class.phpmailer.php

public function IsSMTP() {
$this->Mailer = 'smtp'
;
}


Y en el formulario

$mail->isSendMail();


A mi por el momento no me va.

Un saludo






  #6 (permalink)  
Antiguo 23/06/2012, 00:05
Avatar de manyblue  
Fecha de Ingreso: marzo-2008
Mensajes: 329
Antigüedad: 16 años, 1 mes
Puntos: 10
Respuesta: Problema con PHPMAiler y 1and1

1&1 me remitio a esta pagina:

http://faq.1and1.es/programacion/php...plained/2.html


PD: En este server tambien tengo instalado Sendmail corriendo bien solo es necesario un "telnet 127.0.0.1 25" y me responde sendmail.

Un saludo

Última edición por manyblue; 23/06/2012 a las 01:15

Etiquetas: phpmailer
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:20.