Salve a tutti,
sono parecchie ore che tento di risolvere questo problema: ho bisogno che in ogni record estratto con il ciclo while mi venga fatto il calcolo dei giorni di differenza relativo alla data odierna per avere segnalato tre diverse risposte: attiva(se restituisce un valore prima di gg. 30) in scadenza ((se restituisce un valore entro gg. 30) e scaduta (se restituisce un valore oltre gg. 30). il codice che ho provato mi da' sempre valori sballati, dove sta l'inghippo?
Codice PHP:
while ($record = mysql_fetch_array ($mostra))
{
$data_scad = $record[data_scad];
$dataoggi = date("d/m/Y");
$date_from_parts = explode('/', $dataoggi);
$date_to_parts = explode('/', $data_scad);
$ts_from = mktime(0, 0, 0, $date_from_parts[1], $date_from_parts[0], $date_from_parts[2]);
$ts_to = mktime(0, 0, 0, $date_to_parts[1], $date_to_parts[0], $date_to_parts[2]);
for ($x = $ts_from; $x <= $ts_to; $x += 86400){
$days[] = date('d/m/Y', $x);
}
for ($i = 0; $i <= count($days)-1; $i++){
}
$giorni = "".count($days);
if ($giorni > 30 ){
echo "attiva";
}
if ($giorni < 30 and $giorni > 0){
echo "in scadenza";
}
if ($giorni > 31 and $giorni <= 0){
echo "cassata";
}
se questo codice lo provo assestante , fuori dal ciclo while, va bene, se lo inserisco nel ciclo non ottengo il riconoscimento delle date di ogni record.
Se sono stato chiaro, qualcuno mi può aiutare?