Foros del Web » Programando para Internet » PHP »

Enviando email con php

Estas en el tema de Enviando email con php en el foro de PHP en Foros del Web. Hola a todos!! Tengo un problemilla creo que es cosa de alguna variable del servidor, ya que en mi servidor de pruebas funciona correctamente y ...
  #1 (permalink)  
Antiguo 23/08/2007, 04:51
 
Fecha de Ingreso: abril-2007
Mensajes: 27
Antigüedad: 17 años
Puntos: 0
De acuerdo Enviando email con php

Hola a todos!!

Tengo un problemilla creo que es cosa de alguna variable del servidor, ya que en mi servidor de pruebas funciona correctamente y me llega el email, y sin embargo al subirlo al servidor contratado no funciona.

Tengo un formulario para una suscripción en el que simplemente hay que introducir el email y darle al botón. El código es el siguiente:

Código PHP:
if(isset($suscribir))
{

    
// primero compruebo que es un email válido
    
$clave rand(1000000,10000000);
    
    
$error="";
    
// primero hay que comprobar que el usuario no existe ya en nuestro boletin
    
    
$Data->ResultadoSimpleBd("select id from suscripciones where email='".$emailSuscripcion."' and confirmado='1'","id",$existe_confirmado);
    
$Data->ResultadoSimpleBd("select id from suscripciones where email='".$emailSuscripcion."' and confirmado='0'","id",$existe_noconfirmado);
    
$Data->ResultadoSimpleBd("select id from suscripciones where email='".$emailSuscripcion."' and baja='1'","id",$existe_debaja);
    
    if(
$existe_confirmado>0)
        
$error="Ya formas parte de nuestros suscriptores.";
        
    if(
$existe_noconfirmado>0)
        
$error="Consta como suscriptor sin confirmar, por favor revise su bandeja de correo y confirme su suscripción";
    
    if(
$existe_debaja>0)
        
$error="Ya fué nuestro suscriptor en el pasado. Se le ha vuelto a activar como suscriptor.";
    

    if(
$error=="")
    {
    
        
$email_remitente="[email protected]";
        
$nombre2="Newsletters";

        
$corr=$emailSuscripcion;
    
        include(
"class.phpmailer.php");
        
$Mailer = new phpmailer();
        
$hoy=date("Y-m-d");
        
$Mailer->IsSmtp();
        
$Mailer->Host "host.es";
        
$Mailer->SMTPAuth false;
        
$Mailer->From $email_remitente;
        
$Mailer->FromName $nombre2;
        
$Mailer->AddAddress($corr);
        
$Mailer->IsHtml(true);
        
$Mailer->Subject "Suscripción a Newsletters";
        
            
$texto='<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Recepción de Suscripción</title>
</head>
<body style="font-family:Verdana; font-size:9pt">'
;
$texto.='Gracias por su interes, <br><br>para confirmar su suscripción debe pulsar sobre el siguiente enlace:<br><br>';
$texto.='<a href="'.$direccion.'?confirmar=1&clave='.$clave.'&email='.$emailSuscripcion.' " target="_blank" >pulse aqui</a>';
$texto.='<br><br>En caso de haber recibido este email por error, rogamos se ponga en contacto al email '.$emailEmpresa.'. Perdonen las molestias.
<br><br>
Si desea darse de baja dirígase a la siguiente página y siga las instrucciones :'
.$direccion.'
</body></html>'
;
        
$Mailer->Body $texto;
        
        
$mensaje="";
        if(
$Mailer->Send())
        {
            
$mensaje="Mensaje enviado correctamente<br>";
            
$Data->qryNoRes("INSERT INTO suscripciones SET email='".$emailSuscripcion."', control='".$clave."', fecha_alta='".date('Y-m-d')."'");
        
        }else{
            
$mensaje="Mensaje no enviado<br>";
        }
    }




En la página se lee Mensaje no enviado, sin embargo en mi servidor sí que funciona, pero no se me ocurre que puede ser lo que está pasando.

Alguien puede ayudarme??

Muchas gracias a todos por adelantado!!!
  #2 (permalink)  
Antiguo 23/08/2007, 07:48
Sk!
 
Fecha de Ingreso: agosto-2007
Mensajes: 16
Antigüedad: 16 años, 8 meses
Puntos: 0
Re: Enviando email con php

Cita:
Iniciado por cassil Ver Mensaje
Hola a todos!!

Tengo un problemilla creo que es cosa de alguna variable del servidor, ya que en mi servidor de pruebas funciona correctamente y me llega el email, y sin embargo al subirlo al servidor contratado no funciona.

Tengo un formulario para una suscripción en el que simplemente hay que introducir el email y darle al botón. El código es el siguiente:

Código PHP:
if(isset($suscribir))
{

    
// primero compruebo que es un email válido
    
$clave rand(1000000,10000000);
    
    
$error="";
    
// primero hay que comprobar que el usuario no existe ya en nuestro boletin
    
    
$Data->ResultadoSimpleBd("select id from suscripciones where email='".$emailSuscripcion."' and confirmado='1'","id",$existe_confirmado);
    
$Data->ResultadoSimpleBd("select id from suscripciones where email='".$emailSuscripcion."' and confirmado='0'","id",$existe_noconfirmado);
    
$Data->ResultadoSimpleBd("select id from suscripciones where email='".$emailSuscripcion."' and baja='1'","id",$existe_debaja);
    
    if(
$existe_confirmado>0)
        
$error="Ya formas parte de nuestros suscriptores.";
        
    if(
$existe_noconfirmado>0)
        
$error="Consta como suscriptor sin confirmar, por favor revise su bandeja de correo y confirme su suscripción";
    
    if(
$existe_debaja>0)
        
$error="Ya fué nuestro suscriptor en el pasado. Se le ha vuelto a activar como suscriptor.";
    

    if(
$error=="")
    {
    
        
$email_remitente="[email protected]";
        
$nombre2="Newsletters";

        
$corr=$emailSuscripcion;
    
        include(
"class.phpmailer.php");
        
$Mailer = new phpmailer();
        
$hoy=date("Y-m-d");
        
$Mailer->IsSmtp();
        
$Mailer->Host "host.es";
        
$Mailer->SMTPAuth false;
        
$Mailer->From $email_remitente;
        
$Mailer->FromName $nombre2;
        
$Mailer->AddAddress($corr);
        
$Mailer->IsHtml(true);
        
$Mailer->Subject "Suscripción a Newsletters";
        
            
$texto='<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Recepción de Suscripción</title>
</head>
<body style="font-family:Verdana; font-size:9pt">'
;
$texto.='Gracias por su interes, <br><br>para confirmar su suscripción debe pulsar sobre el siguiente enlace:<br><br>';
$texto.='<a href="'.$direccion.'?confirmar=1&clave='.$clave.'&email='.$emailSuscripcion.' " target="_blank" >pulse aqui</a>';
$texto.='<br><br>En caso de haber recibido este email por error, rogamos se ponga en contacto al email '.$emailEmpresa.'. Perdonen las molestias.
<br><br>
Si desea darse de baja dirígase a la siguiente página y siga las instrucciones :'
.$direccion.'
</body></html>'
;
        
$Mailer->Body $texto;
        
        
$mensaje="";
        if(
$Mailer->Send())
        {
            
$mensaje="Mensaje enviado correctamente<br>";
            
$Data->qryNoRes("INSERT INTO suscripciones SET email='".$emailSuscripcion."', control='".$clave."', fecha_alta='".date('Y-m-d')."'");
        
        }else{
            
$mensaje="Mensaje no enviado<br>";
        }
    }




En la página se lee Mensaje no enviado, sin embargo en mi servidor sí que funciona, pero no se me ocurre que puede ser lo que está pasando.

Alguien puede ayudarme??

Muchas gracias a todos por adelantado!!!
ya tienes configurada bn la dir del smtp, no necesitas autentificacion en el?
creo q te faltan esos parametros en la clase.
  #3 (permalink)  
Antiguo 27/08/2007, 01:12
 
Fecha de Ingreso: abril-2007
Mensajes: 27
Antigüedad: 17 años
Puntos: 0
Pregunta Re: Enviando email con php

Holaaaa , sí puede que sea la autenticación lo que me falta, pero no se cuales son los parámetros que tendría que añadir, me puedes ayudar? Muchas gracias!
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 11:05.