Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/01/2015, 18:19
Avatar de OPMUANRK
OPMUANRK
 
Fecha de Ingreso: diciembre-2014
Mensajes: 52
Antigüedad: 9 años, 11 meses
Puntos: 1
Pregunta Enviar correos usando PHPmailer a correos de una base de datos

¡Hola de nuevo!

Verán, estoy con esto de los correos y quiero que cuando un profesor publique algo a cierto grupo, por ejemplo; 5° A Especialidad Programación Turno Matutino, que se envíe a los alumnos registrados en ese mismo grado, grupo, especialidad y turno. Usé este 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")) {
    
mysql_query("SET NAMES 'utf8'");
  
$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"));
                     
$correo "SELECT correo_al FROM alumnos WHERE semestre = ".$_POST['Semestre']." AND grupo = ".$_POST['Grupo']." AND turno = ".$_POST['Turno']." AND especialidad =".$_POST['Especialidad']."";
                       

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

    
// ---------- adjust these lines ---------------------------------------
    
$mail->Username "******************@gmail.com"// Mi cuenta de Gmail
    
$mail->Password "************"// Mi contraseña
    
$mail->AddAddress($correo); // Variable correo
    
$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 
"<script>
alert('Una notificación por correo ha sido enviada.');
</script>"
;
    }

  
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));

Como verán, la variable $correo contiene comandos SQL para que busque los correos del Grupo, Grado, Especialidad y Turno ingresados al publicar.

Pero no me quiere mandar nada, y ya me cansé de buscar...

¿Alguna ayuda?

¡Gracias por su tiempo!