Ver Mensaje Individual
  #1 (permalink)  
Antiguo 12/11/2014, 13:40
Fozz
 
Fecha de Ingreso: noviembre-2013
Ubicación: México
Mensajes: 94
Antigüedad: 11 años
Puntos: 1
Mail Delivery Subsystem <[email protected]>

Hola que tal, estoy enviando correos desde el código php, pero esto mes lo rebota, no sé si este mal el código; me podrían dar alguna recomendación, envío correos manualmente y si salen, pero cuando es desde el código no funciona, los rebota; les agradezco!!!

Código PHP:
<?php
    
if(isset($_GET["id_mail"])){
        
$id_mail_send $_GET["id_mail"];
    }
    else{
        
header("Location:index.php");
    }
    include(
"conexion.php");
    include(
"funciones.php");
    
$con=conexion();
    
$sql_dir="SELECT * FROM dbo.BITACORA_ALERTAS_MAIL where status != 3 and status != 4 and id_mail =".$id_mail_send;
    
$res_dir=sqlsrv_query($con,$sql_dir);
    if(
$res_dir['status']==3){
        
header("Location:index.php");
    }
    
    
$v_id_eci "";
    
$sql2="update dbo.BITACORA_ALERTAS_MAIL set status=2 where id_mail=".$id_mail_send;    
    
    
$f_dir=sqlsrv_fetch_array($res_dir);
    if(!isset(
$f_dir['status'])){
        
header("Location:index.php");
    }
    
$estatus $f_dir['status'];
    
    
$direcciones explode(",",$f_dir['direcciones']);
    
$asunto =htmlspecialchars$f_dir["asunto"]);
    
$mensaje $f_dir["mensaje"];
    
    
/*                          variables para mail                         */
    
require "phpmailer/PHPMailerAutoload.php";
    require 
"phpmailer/class.phpmailer.php";
    
$mail = new PHPMailer;
    
//indico a la clase que use SMTP
    
$mail->IsSMTP();
    
//permite modo debug para ver mensajes de las cosas que van ocurriendo
    //$mail->SMTPDebug = 2;
    //Debo de hacer autenticación SMTP
    
$mail->SMTPAuth true;
    
$mail->SMTPSecure "ssl";
    
//indico el servidor de Gmail para SMTP
    
$mail->Host "smtp.gmail.com";
    
//indico el puerto que usa Gmail
    
$mail->Port 465;
    
//indico un usuario / clave de un usuario de gmail
    
$mail->Username "[email protected]";
    
$mail->Password "password";
    
$mail->From "[email protected]";
    
$mail->FromName "Alertas";
    
$mail->Subject $asunto;
    
    
$sql_anexos="SELECT
                     dbo.ANEXOS_ECI.id_eci,
                     dbo.ANEXOS_ECI.tipo,
                     dbo.ANEXOS_ECI.extension,
                     dbo.ANEXOS_ECI.anexo,
                     dbo.BITACORA_ALERTAS_MAIL.id_eci AS id_eci_bitacora, 
                     dbo.BITACORA_ALERTAS_MAIL.id_mail,
                     dbo.BITACORA_ALERTAS_MAIL.direcciones
                  FROM
                     dbo.ANEXOS_ECI INNER JOIN dbo.BITACORA_ALERTAS_MAIL ON dbo.ANEXOS_ECI.id_eci = dbo.BITACORA_ALERTAS_MAIL.id_eci
                  WHERE
                     dbo.ANEXOS_ECI.anexo IS NOT NULL AND dbo.BITACORA_ALERTAS_MAIL.id_mail ="
.$id_mail_send;
   
      
$res_anexos=sqlsrv_query($con,$sql_anexos);
      
$agregar=1;
      while(
$f_anexos=sqlsrv_fetch_array($res_anexos))
    {   
        if (
$f_anexos['tipo'] == "IMAGEN")
        {
        
$anexo$f_anexos['anexo'];
                
$extension=$f_anexos['extension'];
                  
$nombre="IMAGEN".$agregar;
                  
//Guarda archivos en una carpeta del servidor
                  
file_put_contents("../siec_mail/temp/$nombre.$extension"$anexo);
                  
$mail->AddAttachment("../siec_mail/temp/$nombre.$extension""$nombre.$extension");
            }
            elseif (
$f_anexos['tipo']=="DOCUMENTO")
            {
                  
$anexo$f_anexos['anexo'];
                  
$extension=$f_anexos['extension'];
                  
$nombre="DOCUMENTO".$agregar;
                  
//Guarda archivos en una carpeta del servidor
                  
file_put_contents("../siec_mail/temp/$nombre.$extension"$anexo);
                  
$mail->AddAttachment("../siec_mail/temp/$nombre.$extension""$nombre.$extension");
            }
            
$agregar++;
           
         }
    
/*                          variables del correo                        */
    
$pos=0;
    
$nom "";
    
$correo="";
    
    while(isset(
$direcciones[$pos])){
        
$correo $direcciones[$pos];
        
$pos++;
        
$nom $direcciones[$pos];
        
$mail->addAddress($correo$nom);
        
$mail->AddCC($correo$nom);
        
//echo "Mail: ".$correo." Nombre: ".$nom."<br>";
        
$pos++;
    }
    
$mail->MsgHTML($mensaje);
    
    if(
$mail->Send()){
        echo 
"En hora buena el mensaje ha sido enviado con exito a ";
        
$sql2="update dbo.BITACORA_ALERTAS_MAIL set status=3 where id_mail=".$id_mail_send;
        
$res2=sqlsrv_query($con,$sql2);
        
$sql3="update dbo.BITACORA_ALERTAS_MAIL set hora_env='".hora()."', fecha_env='".fecha()."' where id_mail=".$id_mail_send;
        
$res3=sqlsrv_query($con,$sql3);
        
header("Location:index.php?err=2");
    }
    else{
        if(
$estatus==1){
            
$sql2="update dbo.BITACORA_ALERTAS_MAIL set status = 4 where id_mail=".$id_mail_send;
            
$res2=sqlsrv_query($con,$sql2);
            
header("Location:enviar2.php?id_mail=".$id_mail_send);
        }
        
header("Location:enviar2.php?id_mail=".$id_mail_send);
    }
?>