ciao ragazzi son di nuovo qui . . . ho un problema grosso![]()
devo confrontare 2 date una presa dal database e una quella odierna . . . devo controllare che siano passati 7 giorni e se sono passati mandare un email![]()
non riesco proprio sto sclerando .. . ho provato a convertire le due date in giorni e calcolare la differenza ma nulla l' if mi ignora i numeri negativi . . .
vio posto il codice scritto:
<?php
if(!$dbconnect =mysql_connect("localhost","root","")) {
echo "Connection failed to the host 'localhost'.";
exit;
} // if
if (!mysql_select_db('bigmat')) {
echo "Cannot connect to database 'test'";
exit;
} // if
$sql="select brikko.codiceid, brikko.stato, statisticheconnessioni.fine from brikko, statisticheconnessioni where stato = 'non connesso' and brikko.chiave = statisticheconnessioni.brikko";
$res=mysql_query($sql);
$num=mysql_num_rows($res);
$giorni=0;
while ($arrayFam=mysql_fetch_array($res))
{
$anno = substr($arrayFam["fine"],0,4);
$mese = substr($arrayFam["fine"],5,2);
$giorno = substr($arrayFam["fine"],8,2);
// calcolo la differenza tra il timestamp della data definita e la data attuale
// il risultato dovrò dividerlo per 86400 (il numero di secondi in un giorno)
// e arrotondarlo per difetto con ceil (vedi ultima linea di codice)
$giorni = ((mktime (0,0,0,$mese,$giorno,$anno) - time())/86400);
// qui stampo giorni o giorno a seconda se la differenza è composta da 1 giorno o più giorni
// funziona anche con i numeri negativi
$pluraleosingolare = ((ceil(abs($giorni)>1)) or ceil($giorni)==0)?"giorni":"giorno";
echo "tra la data di oggi e la data del $giorno/$mese/$anno la differenza è di ".ceil($giorni)." $pluraleosingolare";
$body="";
$giorni= $giorni*1;
if($giorni <= "-7"){
$sql="select brikko.codiceid, brikko.stato, statisticheconnessioni.fine from brikko, statisticheconnessioni where stato = 'non connesso' and brikko.chiave = statisticheconnessioni.brikko";
$res=mysql_query($sql);
$num=mysql_num_rows($res);
while ($arrayFam=mysql_fetch_array($res))
{
$stringa = "<html>Brikko sconnesso da 1 settimana.
nome brikko: ".$arrayFam["codiceid"]."
sconnesso da: ".$arrayFam["fine"]."
stato connessione: ".$arrayFam["stato"]."
</html>";
$stringa = eregi_replace("[\]",'',$stringa);
$body .= $stringa;
}
//invio la mail di avviso
//$mailDoors_from = "bigmat@webworking.it";
}
echo $giorni;
}
$mailDoors_from = "izzusan@libero.it";
$mailDoors_subject = "Brikko sconnesso da 1 settimana";
$headers = "MIME-Version: 1.0\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\n";
$headers .= "From: Bigmat Channel <$mailDoors_from>\nReply-To: $mailDoors_from\n";
$headers .= "Content-type: text/html;";
//$dest="cvisca@webworking.it";
$dest="izzusan@libero.it";
mail ($dest, $mailDoors_subject, $body, $headers);
?>
mi deve mandare l'email solo con le date dove sono passati 7 o piu' gorni help
grazie