Advertisement
Guest User

Untitled

a guest
Jun 26th, 2017
152
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.38 KB | None | 0 0
  1. <?php
  2. /*
  3. * Sinopsis : En esta función colocamos los datos que se enviarán.
  4. * El resultado que regresa es una consulta del total de datos a enviar.
  5. */
  6. set_time_limit(0);
  7. require_once('../lib/utilerias.php');
  8. require_once('globales.php');
  9.  
  10. include('lib/mailer/class.phpmailer.php');
  11. include('lib/mailer/class.smtp.php');
  12.  
  13. $asunto = $_POST['xasunto'];
  14. $adjunto = $_POST['xadjunto'];
  15. $idTbroperacion = 0;
  16.  
  17. $xDatAcceso = new manejoDatos();
  18.  
  19. $xDatAcceso->setOStrServer($strHost);
  20. $xDatAcceso->setOStrUsuario($strUsuario);
  21. $xDatAcceso->setOStrContrasena($strPass);
  22.  
  23. $xDatAcceso->conectaDB($strBase);
  24.  
  25. $xDatSP = clone $xDatAcceso;
  26.  
  27. //Buscamos los datos datos para enviar, como el tipo de Servidor y contraseña de la cuenta origen:
  28. $consulta = "SELECT servidor, puerto, usuario, contrasena, seguridad FROM catcuentas WHERE idCatcuentas=".$_POST['idCatcuentas'];
  29.  
  30.  
  31.  
  32. $xDatAcceso->EjecutaConsultaDB($consulta);
  33. $xDatAcceso->LeeRegistrosDB();
  34.  
  35. if ($xDatAcceso->OIntNumRegistros!=0){
  36. $cuentas = array('servidor'=>$xDatAcceso->ArregloRegistros['servidor'], 'puerto'=>$xDatAcceso->ArregloRegistros['puerto'],
  37. 'usuario'=>$xDatAcceso->ArregloRegistros['usuario'], 'contrasena'=>$xDatAcceso->ArregloRegistros['contrasena'],
  38. 'seguridad'=>$xDatAcceso->ArregloRegistros['seguridad'], 'email'=>$xDatAcceso->ArregloRegistros['email'],
  39. 'nombre'=>$xDatAcceso->ArregloRegistros['nombreDespliegue']);
  40. $xDatAcceso->LeeRegistrosDB();
  41.  
  42. //ya se leyeron los datos, ahora necesitamos el dato del template
  43. $consulta = "SELECT archivo FROM cattemplates WHERE idCattemplates=".$_POST['idCattemplates'];
  44.  
  45. $xDatAcceso->EjecutaConsultaDB($consulta);
  46. $xDatAcceso->LeeRegistrosDB();
  47. if ($xDatAcceso->OIntNumRegistros!=0){
  48. $template = $xDatAcceso->ArregloRegistros['archivo'];
  49. //Si hubo templates, ahora procedemos a verificar quienes están en la lista.
  50. $consulta = "SELECT email, nombre FROM catdestinatarios WHERE catlistas_idCatlistas = ".$_POST['idCatlistas'];
  51.  
  52. $xDatAcceso->EjecutaConsultaDB($consulta);
  53. $xDatAcceso->LeeRegistrosDB();
  54. if($xDatAcceso->OIntNumRegistros!=0){
  55. //Ahora procedemos a ir enviando uno por uno los mensajes.
  56. while(!$xDatAcceso->getOBolEOF()){
  57. $xemail = $xDatAcceso->ArregloRegistros['email'];
  58. $xnombre = $xDatAcceso->ArregloRegistros['nombre'];
  59.  
  60. //Aquí debe ir la parte propiamente del envío y su consecuente respuesta
  61. $body = file_get_contents($template);
  62.  
  63. $mail = new PHPMailer();
  64. $mail->IsSMTP();
  65. $mail->SMTPAuth = true;
  66. $mail->SMTPSecure = $cuentas['seguridad'];
  67. $mail->Host = $cuentas['servidor'];
  68. $mail->Port = $cuentas['puerto'];
  69. $mail->Username = $cuentas['usuario'];
  70. $mail->Password = $cuentas['contrasena'];
  71.  
  72. $mail->From = $cuentas['email'];
  73. $mail->FromName = $cuentas['nombre'];
  74. $mail->Subject = $asunto;
  75. $mail->Body = $body;
  76. if($adjunto!='-'){
  77. $mail->AddAttachment($adjunto);
  78. }
  79. $mail->AddAddress($xemail,$xnombre);
  80. $mail->IsHTML(true);
  81. if(!$mail->Send()){
  82. $envio = true;
  83. $resultado = 'Er';
  84. } else {
  85. $envio = false;
  86. $resultado = 'Ok';
  87. }
  88.  
  89. //Ya tenemos la respuesta, ahora procedemos a escribir los resultados en la operación.
  90. //Dependiendo del valor de envío, procedemos a realizar la insercción de los datos.
  91. $consultaSP = "call insertatbroperacion('".$_POST['fecha']."',".$_POST['idCatcuentas'].", ".$_POST['idCatlistas'].", ".$_POST['idCattemplates'].",".$_POST['idCatusuarios'].",'".$xemail."','".$resultado."',".$idTbroperacion.", '".$asunto."')";
  92. $xDatSP->EjecutaConsultaDB($consultaSP);
  93. $xDatSP->LeeRegistrosDB();
  94. if($xDatSP->getOIntError!=0){
  95. $idTbroperacion = $xDatSP->ArregloRegistros['idTbroperacion'];
  96. $datos[] = array('respuesta'=>$idTbroperacion);
  97. } else {
  98. $datos[] = array('respuesta'=>$consultaSP);
  99. }
  100.  
  101.  
  102.  
  103.  
  104. //Esta debe ser la última línea del while
  105. $xDatAcceso->LeeRegistrosDB();
  106. }
  107.  
  108. } else {
  109. $datos[] = array('numRegistros'=>0);
  110. }
  111. } else {
  112. $datos[] = array('numRegistros'=>0);
  113. }
  114.  
  115. } else {
  116. $datos[] =array('numRegistros'=>0, 'iteracion'=>$iteracion);
  117. }
  118.  
  119. echo json_encode($datos);
  120. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement