Hola, buenas. Quisiera un consejo sobre el envío del título de un email. Estoy utilizando este código para enviar los correos a los usuarios que se registran:
Código:
<?php
$id = $_POST["id"];
$verificacion = $_POST["verificacion"];
$fecha=$_POST["fecha"];
include 'conexion.php';
//**************************************** Verificacion 1 ok, 2 no aprobado, 0 espera de verificacion, 4 sin movimientos ****************************
//echo '<script language="javascript">alert("El valor de id es = '.$id.' ");</script>';
if($verificacion==3){
//$tabla=$mysqli->query("update asistente set verificacion=".$verificacion." where id=".$id);
$tabla=$mysqli->query("select c.idCurso, c.cupo, c.nombreCurso, c.claveCurso from curso c inner join curso_asistente ca
on c.idCurso=ca.idCurso where ca.idUsuario='".$id."'");
//checar cupo del grupo!!!
$cursosLlenos ="";
$cursosIns ="";
//agregar asistente al curso!!!
while($row = $tabla->fetch_array()) {
//Versiòn 2: Se calcula la capacidad
/*$inscritos = $mysqli->query("select verificacion from asistente inner join curso_asistente on curso_asistente.idUsuario = asistente.folio && curso_asistente.idCurso = '".$row[0]."' && asistente.verificacion=3");*/
$inscritos = $mysqli->query("select inscrito from curso_asistente where idCurso = '".$row[0]."' && inscrito=1 ");
$NumInscritos = mysqli_num_rows($inscritos);
$capacidad = $row[1] - $NumInscritos; //cupo menos inscritos
if($capacidad>0){
$inscribir = $mysqli->query("update curso_asistente set inscrito=1 where (idUsuario='".$id."' && idCurso='".$row[0]."')");
$cursosIns .= " + ".htmlentities($row[2])."<br>";
}else{
$cursosLlenos .= " - ".htmlentities($row[2])."<br>";
//$mysqli->query("delete from curso_asistente where nomCurso='".$row[0]."' and idUsuario='".$id."'");
/*$mysqli->query("update curso set claveCurso='".$row[3]."_X' where
claveCurso='".$row[3]."' and year ='".$fecha."'");*/
}
}
$tabla=$mysqli->query("update asistente set verificacion=".$verificacion." where folio='".$id."'");
$tabla=$mysqli->query("update factura set verificacion=1 where idUsuario='".$id."'");
}else if($verificacion==2){ //SI ES RECHAZADO
$tabla3=$mysqli->query("update asistente set verificacion=".$verificacion." where folio='".$id."'");
$tabla3=$mysqli->query("update factura set verificacion=0 where idUsuario='".$id."'");
}
//////////////////Se agrega nuevo codigo para enviar correo electronico de confirmacion
include "config.php";
require 'class.phpmailer.php';
$mail = new PHPMailer();
//Luego tenemos que iniciar la validación por SMTP:
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->Host = $host; // SMTP a utilizar. Por ej. smtp.elserver.com
$mail->Username = $Username; // Correo completo a utilizar
$mail->Password = $password; // Contraseña
$mail->Port = $port; // Puerto a utilizar
$mail->SMTPSecure = $smtpSecure;
//Con estas pocas líneas iniciamos una conexión con el SMTP. Lo que ahora deberíamos
//hacer, es configurar el mensaje a enviar, el //From, etc.
//$mail->From = "[email protected]"; // Desde donde enviamos (Para mostrar)
$mail->FromName = $fromName;
//$tabla=$mysqli->query("Select * from asistente where id='".$id."'");
$tabla=$mysqli->query("Select * from asistente where folio='".$id."'");
//Estas dos líneas, cumplirían la función de encabezado (En mail() usado de esta forma: “From: Nombre <[email protected]>”) de //correo.
while($row = $tabla->fetch_array()){
$mail->AddAddress($row[6]); // Esta es la dirección a donde enviamos //SE cambio row 7 por row 6.
// $mail->AddBCC("[email protected]", $name = "Adrian Vazquez"); // Esta es la copia oculta que se envia.
$mail->IsHTML(true); // El correo se envía como HTML
$mail->Subject = "Inscripcion CONFIRMADA a la SNIDM - Universidad de Sonora"; // Este es el titulo del email.
if($verificacion==3){
$body = "<strong> Hola ".$row[0].",<br><br>
Este correo es para confirmar que tu inscripción a la Semana Nacional de Investigación y
Docencia en Matemáticas ha sido registrada EXITOSAMENTE. </strong><br><br>";
}else if($verificacion==2 && $row[10]=0 ){ //si es becado
$body = "<strong> Hola ".$row[0].",<br><br>
Este correo es para informar que tu inscripción a la Semana Nacional de Investigación y
Docencia en Matemáticas NO está finalizada. Lamentablemente no se pudo visualizar bien la imagen de tu credencial. Te invitamos a subir de nuevo dicha imagen. </strong><br><br>";
}else if($verificacion==2 && $row[10]=1){//si NO es becado
$body = "<strong> Hola ".$row[0].",<br><br>
Este correo es para informar que tu inscripción a la Semana Nacional de Investigación y
Docencia en Matemáticas NO stá COMPLETA. Lamentablemente no se pudo visualizar bien la imagen del comprobante de pago. Te invitamos a subir de nuevo dicha imagen. </strong><br><br>";
}
$body .= "<span><strong>Cursos Seleccionados:</strong></span><br>";
$cursoSelec = $mysqli->query("select curso.nombreCurso from curso
inner join curso_asistente on curso.idCurso = curso_asistente.idCurso
where idUsuario='".$id."'"); //Solo los cursos seleccionados.
/*$tabla = $mysqli->query("select curso.nombreCurso from curso_asistente
inner join curso on curso.idCurso = curso_asistente.idCurso
where idUsuario='".$id."'");
*/
while($curso=$cursoSelec->fetch_array()){
$body .= " + ".htmlentities($curso[0])."<br>";
}
$body .= "<span><strong>Cursos donde obtuvo cupo:</strong></span><br>" .$cursosIns;
$body .="<span><strong>Cursos donde NO obtuvo cupo:</strong></span><br>" .$cursosLlenos;
/*if( $tabla->num_rows > 0 ){
$tabla = $mysqli->query("select curso.nombreCurso from curso
inner join curso_asistente on curso.idCurso = curso_asistente.idCurso
where idUsuario='".$id."' && inscrito=1"); //Aqui se consideran las materias en las que fue aceptado.
while($row=$tabla->fetch_array()){
$body .= " + ".htmlentities($row[0])."<br>";
}
//else{
//$body .="Desafortunadamente no pudo inscribirse en los siguientes cursos:<br>" .$cursosLlenos;
//}
}*/
$body .= "<strong>Datos De registro:</strong><br>";
$body .= "<strong>Folio</strong>:".$row[5]."<br>";
$body .= "<strong>Nombre:</strong>".$row[0]." ".$row[1]." ".$row[2]."<br>";
$body .= "<strong>Registrado como:</strong>".$row[4]."<br>";
$body .= "<strong>Institución</strong>:".$row[3]."<br><br>";
if($row[11]=='1'){
//$body.= "<strong>Datos de facturación:</strong><br>";
$fac=$mysqli->query("Select * from factura where idUsuario='".$id."'");
while($fact = $fac->fetch_array()){
$body .= "<strong>Datos De Facturación:</strong><br>";
$body .= "<strong>Nombre</strong>:".$fact[0]."<br>";
$body .= "<strong>Calle</strong>:".$fact[1]."<br>";
$body .= "<strong>Número</strong>:".$fact[2]."<br>";
$body .= "<strong>Colonia</strong>:".$fact[3]."<br>";
$body .= "<strong>C.P.</strong>:".$fact[4]."<br>";
$body .= "<strong>Municipio</strong>:".$fact[5]."<br>";
$body .= "<strong>Estado</strong>:".$fact[6]."<br>";
$body .= "<strong>País</strong>:".$fact[11]."<br>";
$body .= "<strong>R.F.C</strong>:".$fact[7]."<br>";
if($fact[10]==1) $fact[10]="Si";
else $fact[10]="No";
$body .= "<strong>Iva desglosado: </strong>".$fact[10]."<br>";//quedo un 1 o un 0. Deberia mandarse un si o un no.
$body .= "<strong>E-mail</strong>:".$fact[9]."<br><br>";
}
}
$mail->Body = $body; // Mensaje a enviar
$exito = $mail->Send(); // Envía el correo.
//Enviar copia
//También podríamos agregar simples verificaciones para saber si se envió:
if($exito){
echo true;
echo "Se envio";
}else{
echo $mail->ErrorInfo;
}
}
$mysqli->close();
header("Location:panelC.php?view=A1&fecha=".$fecha."");
?>
En caso de que "verificación==3" (osea que el asistente sea aceptado), se envía un correo con el título: "Inscripcion CONFIRMADA a la SNIDM - Universidad de Sonora".
Aquí viene mi duda, cuál es la manera más adecuada para que cuando "verificacion==2 && $row[10]=1" (Asistente NO aceptado) Y "verificacion==2 && $row[10]=0" (asistente tampoco aceptado)
Me envíe otro título en el correo, en lugar de "Inscripcion CONFIRMADA" me mande: "Inscripcion DENEGADA". Se tiene que hacer otro correo? o cómo lo puedo hacer?, gracias de antemano !!