Código PHP:
<?php
$conex=mysql_connect('localhost','user','clave') or die('No se puedo conectar con la base de datos!');
/*
Servidor: aquí debe poner la dirección de su servidor, en la mayoría de las compañías es 'localhost'
Nombre_de_usuario: debe pone su nombre de usuario en el servidor.
Contraseña: su contraseña.
*/
mysql_select_db('mibasededatos',$conex);
function suma_fechas($fecha,$ndias)
{
if (preg_match("/[0-9]{1,2}\/[0-9]{1,2}\/([0-9][0-9]){1,2}/",$fecha))
list($año,$mes,$dia)=split("/", $fecha);
if (preg_match("/[0-9]{1,2}-[0-9]{1,2}-([0-9][0-9]){1,2}/",$fecha))
list($dia,$mes,$año)=split("-",$fecha);
$nueva = mktime(0,0,0, $mes,$dia,$año) + $ndias * 24 * 60 * 60;
$nuevafecha=date("Y-m-d",$nueva);
return ($nuevafecha);
}
echo '<head>
<title>'.$_SERVER[PHP_SELF].'</title>
</head>
<html>
<body>';
//aqui es donde quiero llamar a la fecha para después sumarle los Días
$date = mysql_query ("SELECT dimeq_listings.mail,DATE_FORMAT(dimeq_listings.date_expire, '%d-%m-%Y') AS nfecha,dimeq_listings.selector,dimeq_listings.firmname FROM dimeq_listings where dimeq_listings.membership = 1", $conex) or die( mysql_error() );
while($row2 = mysql_fetch_array( $date ))
{
$f11=suma_fechas($row2['nfecha'], 0); // aquí le sumo a la fecha 60 días
echo '</body>
</html>';
// tu sabrás como la obtienes, solo asegurate que tenga este formato
$dias= 15; // los días a restar
$fechaenvio = date("Y-m-d", strtotime("$f11 -$dias day"));
$fechaactual=strftime( "%Y-%m-%d ", time() );
//elaboramos cadena de emails
echo "Fecha actual ".$fechaactual."<br>";
echo "Fecha de envio ".$fechaenvio."<br>";
}
$query_Tabla = "SELECT dimeq_listings.mail,DATE_FORMAT(dimeq_listings.date, '%d-%m-%Y'),DATE_FORMAT(dimeq_listings.date_expire, '%d-%m-%Y') FROM dimeq_listings where dimeq_listings.membership = 1 ORDER BY userid ASC";
$Tabla = mysql_query($query_Tabla, $conex) or die(mysql_error());
/*
Email: es el nombre del campo que requerimos, si ha seguido nuestras instrucciones creando nuestra misma tabla en la base de datos no debe cambiar esto.
Usuarios: es el nombre de la tabla donde está el campo 'email', si ha seguido nuestras instrucciones creando nuestra misma tabla en base de datos no debe cambiar esto.
*/
if ( $fechaactual = $fechaenvio) {
//elaboramos cadena de emails
$losemails="";
while ($row_Tabla=mysql_fetch_assoc($Tabla)) {
$losemails.=($row_Tabla['mail'].", ");
}
$largo=strlen($losemails);
if ($largo>2)
{
//quitamos ultimos ", "
$losemails=substr($losemails,0,$largo-2);
}
else
{
echo "No hay destinatarios!";
die();
};
// se definen los argumentos de mail( ):
$asunto='Prueba de email desde PHP';
$mensaje='<html>
<head>
<title>Titulo de la Pagina</title>
</head>
<body>
<p>Esta es una prueba de emails en formato HTML</p>
Precios de nuestros productos:
<table>
<tr>
<th>PRODUCTO<th>PRECIO<th>PROMOCION</th>
</tr>
<tr>
<td>Refresco Grande</td><td>25,50</td><td>23,00</td>
</tr>
<tr>
<td>Helado Napolitano</td><td>27,50</td><td>25,00</td>
</tr>
<tr>
<td>Patatas</td><td>18,50</td><td>15,00</td>
</tr>
</table>
</body>
</html>';
/*
Aquí debe poner su email en formato HTML
*/
$envia='[email protected]';
$remite='[email protected]';
/*
Enviante: Nombre del enviante
Email_remitente: email que desea mostrar como remitente.
*/
/// Envío del email:
mail(null, $asunto, $mensaje, "MIME-Version: 1.0
Content-type: text/html; charset=iso-8859-1
From: $envia <$remite>
Bcc: $losemails" . "\r\n") or die("Error al Enviar el Email");
echo "Mensaje Enviado con Éxito!"; //
mysql_free_result($Tabla);
}
else
{
echo "no ay mensajes pra enviar a la fecha";
}
mysql_close($conex);
?>