Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Problema al enviar correo (phpmailer)

Estas en el tema de Problema al enviar correo (phpmailer) en el foro de PHP en Foros del Web. Hola de nuevo, y gracias por tomarse la molestia de responder y leer. Estuve trabajando con notificaciones por correo, si me llegan, pero al momento ...
  #1 (permalink)  
Antiguo 23/12/2014, 22:42
Avatar de OPMUANRK  
Fecha de Ingreso: diciembre-2014
Mensajes: 52
Antigüedad: 9 años, 4 meses
Puntos: 1
Pregunta Problema al enviar correo (phpmailer)

Hola de nuevo, y gracias por tomarse la molestia de responder y leer.
Estuve trabajando con notificaciones por correo, si me llegan, pero al momento de poner condiciones SQL para elegir a quién se enviará el correo, no llega, ¿qué estaré haciendo mal?

Mi código:

Código PHP:
$editFormAction $_SERVER['PHP_SELF'];
if (isset(
$_SERVER['QUERY_STRING'])) {
  
$editFormAction .= "?" htmlentities($_SERVER['QUERY_STRING']);
}

if ((isset(
$_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
  
$insertSQL sprintf("INSERT INTO publicar (imagen, De, Usuario, Semestre, Grupo, Especialidad, Turno, Asunto, Describir, Fecha) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s)",
                       
GetSQLValueString($_POST['imagen'], "text"),
                       
GetSQLValueString($_POST['De'], "text"),
                       
GetSQLValueString($_POST['usuario'], "text"),
                       
GetSQLValueString($_POST['Semestre'], "text"),
                       
GetSQLValueString($_POST['Grupo'], "text"),
                       
GetSQLValueString($_POST['Especialidad'], "text"),
                       
GetSQLValueString($_POST['Turno'], "text"),
                       
GetSQLValueString($_POST['Asunto'], "text"),
                       
GetSQLValueString($_POST['Describir'], "text"),
                       
GetSQLValueString($_POST['fecha'], "text"));
                     
mysql_select_db($database_Cetis$Cetis);
$query_correo "SELECT especialidad, turno, grupo, semestre FROM alumnos WHERE especialidad = '".$_POST['Especialidad']."' AND turno = '".$_POST['Turno']."' AND grupo = '".$_POST['Grupo']."' AND semestre = '".$_POST['Semestre']."'";
$correo mysql_query($query_correo$Cetis) or die(mysql_error());
$row_correo mysql_fetch_assoc($correo);
$totalRows_correo mysql_num_rows($correo);
                       

require(
"phpmailer/class.phpmailer.php");
    
$mail = new PHPMailer();

    
// ---------- adjust these lines ---------------------------------------
    
$mail->Username "*******@gmail.com"// your GMail user name
    
$mail->Password "*********"
    
$mail->AddAddress($totalRows_correo); // recipients email
    
$mail->FromName "PAM"// readable name

    
$mail->Subject "".$_POST['De']." hizo una publicación para tu grupo.";
    
$mail->Body    "El maestro ".$_POST['De']." ha publicado algo para tu grupo. ¿Por qué no entras a PAM y lo revisas? \n\n\n Asunto de la publicación: ".$_POST['Asunto']." \n\n\n - Grupo de desarrollo de PAM. \n\n\n\n Plataforma de Ayuda para Maestros."
    
//-----------------------------------------------------------------------

    
$mail->Host "ssl://smtp.gmail.com"// GMail
    
$mail->Port 465;
    
$mail->IsSMTP(); // use SMTP
    
$mail->SMTPAuth true// turn on SMTP authentication
    
$mail->From $mail->Username;
    if(!
$mail->Send()){
        echo 
"Mailer Error: " $mail->ErrorInfo;
    }
    else{
        echo 
"Se envió correctamente.";
    }

  
mysql_select_db($database_Cetis$Cetis);
  
$Result1 mysql_query($insertSQL$Cetis) or die(mysql_error());

  
$insertGoTo "Publicacion_exitosa.php";
  if (isset(
$_SERVER['QUERY_STRING'])) {
    
$insertGoTo .= (strpos($insertGoTo'?')) ? "&" "?";
    
$insertGoTo .= $_SERVER['QUERY_STRING'];
  }

  
header(sprintf("Location: %s"$insertGoTo));

Quité mi correo y la contraseña xDD

Pues en realidad no sé en qué esté mal, si quito la parte del remitente y le pongo un correo, sí me llega, pero no cuando quiero que se mande a cierto grupo de personas :/

Gracias por su ayuda, jóvenes de FDW :)
  #2 (permalink)  
Antiguo 24/12/2014, 07:14
Avatar de enlinea777  
Fecha de Ingreso: mayo-2008
Ubicación: frente al pc
Mensajes: 1.830
Antigüedad: 15 años, 10 meses
Puntos: 127
Respuesta: Problema al enviar correo (phpmailer)

lo que estas haciendo es usar dreamweaver para tu proyecto.
eso es lo que esta mal.

trata de hacerlo sin las heramientas de auto completado.
evitar el uso de sprintf para generar querys
  #3 (permalink)  
Antiguo 24/12/2014, 16:40
Avatar de OPMUANRK  
Fecha de Ingreso: diciembre-2014
Mensajes: 52
Antigüedad: 9 años, 4 meses
Puntos: 1
Respuesta: Problema al enviar correo (phpmailer)

Cita:
Iniciado por enlinea777 Ver Mensaje
lo que estas haciendo es usar dreamweaver para tu proyecto.
eso es lo que esta mal.

trata de hacerlo sin las heramientas de auto completado.
evitar el uso de sprintf para generar querys
Gracias, pero no me sirve mucho tu respuesta xD
  #4 (permalink)  
Antiguo 24/12/2014, 17:19
(Desactivado)
 
Fecha de Ingreso: enero-2013
Mensajes: 289
Antigüedad: 11 años, 2 meses
Puntos: 10
Respuesta: Problema al enviar correo (phpmailer)

prueba de añadir las direcciones una por una:

$mail->AddAddress('[email protected]', 'Paco');
$mail->AddAddress('[email protected]', 'Maria');
  #5 (permalink)  
Antiguo 25/12/2014, 08:14
Avatar de OPMUANRK  
Fecha de Ingreso: diciembre-2014
Mensajes: 52
Antigüedad: 9 años, 4 meses
Puntos: 1
Respuesta: Problema al enviar correo (phpmailer)

Cita:
Iniciado por moginn Ver Mensaje
prueba de añadir las direcciones una por una:

$mail->AddAddress('[email protected]', 'Paco');
$mail->AddAddress('[email protected]', 'Maria');
Hola moginn, pues eso no es exactamente lo que quiero hacer, quiero que cuando un docente publique a cierto grupo, por ejemplo: 3° A de Mantenimiento Automotriz, se les mande un correo a los alumnos registrados como alumnos de 3° A de Mantenimiento Automotriz.

Gracias por tu ayuda :D
  #6 (permalink)  
Antiguo 25/12/2014, 12:14
(Desactivado)
 
Fecha de Ingreso: enero-2013
Mensajes: 289
Antigüedad: 11 años, 2 meses
Puntos: 10
Respuesta: Problema al enviar correo (phpmailer)

has puesto

$mail->AddAddress($totalRows_correo);

y $totalRows_correo no es ninguna dirección de correo, sinó un número entero
  #7 (permalink)  
Antiguo 26/12/2014, 08:23
Avatar de enlinea777  
Fecha de Ingreso: mayo-2008
Ubicación: frente al pc
Mensajes: 1.830
Antigüedad: 15 años, 10 meses
Puntos: 127
Respuesta: Problema al enviar correo (phpmailer)

pues en la query
SELECT especialidad, turno, grupo, semestre FROM alumnos WHERE especialidad = '".$_POST['Especialidad']."' AND turno = '".$_POST['Turno']."' AND grupo = '".$_POST['Grupo']."' AND semestre = '".$_POST['Semestre']."'";

que campo es el correo¿?
  #8 (permalink)  
Antiguo 01/01/2015, 22:27
Avatar de OPMUANRK  
Fecha de Ingreso: diciembre-2014
Mensajes: 52
Antigüedad: 9 años, 4 meses
Puntos: 1
Respuesta: Problema al enviar correo (phpmailer)

Muchas gracias a todos y feliz año, ya lo solucioné, y efectivamente era el query.

Gracias :D

Etiquetas: correo, notificación, phpmailer, sql
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 05:37.