Ver Mensaje Individual
  #14 (permalink)  
Antiguo 30/07/2003, 09:14
Avatar de dwaks
dwaks
 
Fecha de Ingreso: agosto-2002
Ubicación: Panamá
Mensajes: 962
Antigüedad: 21 años, 9 meses
Puntos: 15
Mensaje SCRIPT: Darle descanso a los envios de email masivo.( Los descanso son en minutos)

#Dar descanso a una aplicacion de envio de email masivo que
#esta formado por dos secciones prueba.php y reloj.php.
# Desarrollado por Marco A. Castillo - [email protected]

#Cualquier detalle sobre este email mandenmelo a mi email
#cualquier actualizacion tambien jeje para tenerla.

#Comenzamos con el primer archivo llamado. prueba.php
#este nombre es el que puse para referirme a el en toda esta informacion y detalles.

<?php
#Este codigo es para no tener problema con la funcion header()
ob_start();
?>
<?php
#cambia estas opciones con la informacion tuya, de forma correcta
#Tu host, tu user, tu pass y la base de datos que quieres conectar
$host = "localhost";
$user = "root";
$pass = "password";
$data = "base_de_datos";
#aqui inicia la funcion que conecta a la base de datos
function Conectarse($host,$user,$pass,$data)
{
if (!($link=mysql_connect($host,$user,$pass)))
{
echo "Error conectando a la base de datos.";
exit();
}
if (!mysql_select_db($data,$link))
{
echo "Error seleccionando la base de datos.";
exit();
}
return $link;
}
#coneccion y envio de los emails
$link = Conectarse($host,$user,$pass,$data);
if (!isset($pag)) $pag = 1; // Por defecto, pagina 1

#Aqui defininimos la cantidad de email que quieres enviar para luego redireccionar y descansar.
$tampag = 1;
$reg1 = ($pag-1) * $tampag;

#aqui en este sql cambia la tabla a conectarse y la sentencia del sql si quieres.
$sql = ("select * from usuarios_foros");
$result = mysql_query($sql, $link);
$total = mysql_num_rows($result);
for ($i=$reg1; $i<min($reg1+$tampag, $total); $i++) {
mysql_data_seek($result, $i);
$row = mysql_fetch_array($result);
# Aqui va inicia el envio de email
mail($row["email"],$asunto,$mensaje,$de);
}
$pag = $pag + 1;

#Aqui detecto si ya todo se envio, si no es asi redirecciona a reloj.php
#si ya termino de enviar entonces te manda un mensaje diciendo que acabo.
if ( $i != $total ) {
header("location: reloj.php?pag=".$pag);
}
elseif ($reg1 != $total) {
header("location: reloj.php?pag=".$pag);
}
else {
echo "<center><font size=5 face=tahoma><b>Todos los registros fueron enviados</b><font></center>";
}
?>
<?php
#Este codigo es para no tener problema con la funcion header()
ob_end_flush();
?>

Última edición por dwaks; 30/07/2003 a las 15:02