j'ai un soucis sur un traitement de boucle effectuée par une tache cron (effectuée toutes les 10mn)....or je ne comprends pas où est le problème dans mon script, les résultats ne s'affichent pas !
Explication du script :
J'ai un écart entre deux heures exprimé en minute (l'heure de la commande et l'heure en cours)
Je souhaite afficher des résultats si l'écart entre ces deux heures est > à 10 mn
Voici le script :
// La fonction qui calcule la différence en minute entre deux heures
function difheure($heuredeb,$heurefin)
{
$hd=explode(":",$heuredeb);
$hf=explode(":",$heurefin);
$hd[0]=(int)($hd[0]);$hd[1]=(int)($hd[1]);$hd[2]=(int)($hd[2]);
$hf[0]=(int)($hf[0]);$hf[1]=(int)($hf[1]);$hf[2]=(int)($hf[2]);
if($hf[2]<$hd[2]){$hf[1]=$hf[1]-1;$hf[2]=$hf[2]+60;}
if($hf[1]<$hd[1]){$hf[0]=$hf[0]-1;$hf[1]=$hf[1]+60;}
if($hf[0]<$hd[0]){$hf[0]=$hf[0]+24;}
return (($hf[0]-$hd[0]).":".($hf[1]-$hd[1]).":".($hf[2]-$hd[2]));
}
// heure du moment
$heureencours=date("H:i:s");
$query = "select * from commande";
$result = mysql_db_query("$dbbase", $query) or die($query . mysql_error( ));
while ($r = mysql_fetch_array($result))
{
$heurecommande= $r['heurecommande'];
// fonction de différence entre temps de la commande et temps de passage de la tache cron=10 mn
$difheure=difheure($heurecommande,$heureencours);
// explode du résultat pour isoler les minutes
$difminute=explode (":",$difheure);
$difminute2=$difminute[1];
// si la différence de minute est supérieur à 10 on affiche les résultats
if("10"<="$difminute2")
{
$retour2 = mysql_query('SELECT * FROM commande_contenu WHERE numcommande='.$r['numcommande'].' and idclient='.$r['idclient'].' ORDER BY idproduit');
while ($donnees2 = mysql_fetch_array($retour2))
{
$retourstock2 = mysql_query('SELECT * FROM produit WHERE id='.$donnees2['idproduit']);
$donneesstock2 = mysql_fetch_array($retourstock2);
// AFFICHAGE DU NOM DU PRODUIT
echo $donneesstock2 ['nomproduit'];
}
}
else
{
}
echo "<BR><BR>";
// fin boucle query
}mysql_query($query);
Je n'ai aucun résultat qui s'affiche.Pour info les heures sont bonnes, le problème vient après le IF() et le WHILE de $donnees2 mais je sais pas pourquoi