Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/09/2004, 11:06
Avatar de libiob
libiob
 
Fecha de Ingreso: julio-2003
Ubicación: Lima
Mensajes: 125
Antigüedad: 20 años, 9 meses
Puntos: 1
Exclamación Un detalle a solucionar para mi script!

Estimados amigos, tengo un problema y necesito de vuestra ayuda.
Este script envia correos a los registrados que obtengo de un reporte TXT y los cargo a la Web desde un formulario, todo va ok hasta que hace el envio, como comento en el script, envia al primero bien su correo, al segundo le envia 2 diseños en 1 solo correo con datos del 1ro y el que le corresponde, y asi sucesivamente.
El diseño del mail necesariamente lo tengo que poner donde se encuentra ya que debe capturar el nombre, empresa , etc de cada envio.
La estructura del txt es el siguiente:
Prueba.TXT
----------------------------------------------
Pais; Numero PIN; Empresa; Nombres; [email protected]
Pais; Numero PIN; Empresa; Nombres; [email protected]
Pais; Numero PIN; Empresa; Nombres; [email protected]
----------------------------------------------

Espero se me entienda, aqui pongo el script, se de su valiosa ayuda ya que anteriormente la he recibido.

Código PHP:
<?
  $fname
="Prueba.txt";  //leemos el fichero
  
$fp=fopen($fname,"r") or die("Error al abrir el Reporte");
  
$line fgets$fp4096 );
  
$db_link mysql_connect("localhost","usua","pass");   //iniciamos conexion a bbdd
  
if ($db_link)
       { 
           @
mysql_select_db('basedatos');
         }
         else
         {
         echo 
"Error de conexion!";
         }
    
$i=1;
    
$link=conectarse();
    
$asunto="Asunto mail";//Asunto del Mail
    
$encabezados  "MIME-Version: 1.0\n";//Cabezera
    
$encabezados .= "Content-type: text/html; charset=iso-8859-1\n";//Cabezera
    
$encabezados .= "From: Nombre <[email protected]>\n";//Cabezera
    
$encabezados .= "X-Sender: <[email protected]>\n";//Cabezera
    
$encabezados .= "X-Mailer: PHP\n";//Cabezera
    
$encabezados .= "X-Priority: 3\n";//Cabezera
    
$encabezados .= "Return-Path: Nombre <[email protected]>\n";//Cabezera
  
while(!feof($fp))
     {
                if(
$_POST[AC]=="ADD")//Se ejecuta si se añade registros, este valor de la condicion viene despues del formulario de carga
                
{
        list(
$Country,$PIN,$Empresa,$Name,$Email) =split";"$line);//capturamos el contenido del TXT y separamos los valores que esten en ";"
                
$line fgets$fp4096 );
              
$result=mysql_query("INSERT INTO Tabla (Country,PIN,Empresa,Name,Email)values('$Country','$PIN','$Empresa','$Name','$Email')",$link); //Cargamos la info a la base de datos
                
$v=$i++;//Cuenta los envios
                
include "Disenodelmail.html";//Aqui el diseño del mail, este contiene datos de cada dato registrado y es enviado a su mail.
                //Aqui el problema, envia al primero bien, al segundo le envia tambien del primero y asi si hay un 5to le enviara desde el 1ro al 5to
                //necesariamente debe estar el mail aqui porque captura los datos de cada persona del archivo Prueba.TXT
                
$ACcion=mail($Email$asunto$mensaje$encabezados);
                }
                else
// Aqui ejecutamos si se trata de actualizar Registros
                
{
        list(
$Country,$PIN,$PIN_S,$Empresa,$Name,$DI,$Email) =split";"$line);//
        
$line fgets$fp4096 );
                
$result=mysql_query("UPDATE globalcard SET Country='$Country',DI='$DI',PIN='$PIN',PIN_S='$PIN_S',Name='$Name',Empresa='$Empresa' where DI='$DI'",$link);//
                
$v=$i++;// Cuenta los envios
                
include "ModelMail1.php";
                
$ACcion=mail($Email$asunto$mensaje$encabezados);
                }
         }
     if(
$ACcion==true){echo"<li>Se enviarón los correos correctamente";}else{echo"<li><b><font color=\"#ff0000\">Error en el envio de correos!</font></b>";}
         if(
$result==true)
         {
         echo
"<li>Se cargar&oacute;n o actualizar&oacute;n  <b>$v</b> nuevos registros con Exito";
         }
         else
         {
         echo
"<li><b><font color=\"#ff0000\">No se cargar&oacute;n o actualizar&oacute;n los <b>$v</b> nuevos registros!</font></b>";
         }
  
fclose($fp);
    
mysql_close($link);
?>
De antemano agradesco vuestra ayuda y tiempo.

Saludos.

Libio Balbin

Última edición por libiob; 15/09/2004 a las 11:29