ZE page a appeller(ici, tours_augmentation.php)
//Retourne le nombre de tour écoulé
function verifier_chronometre_tours()
{
//On récupère le timestamp enregistre
$tp=fopen("next_tour.txt","r+");
//On met un verrou
flock($tp, LOCK_EX);
$timestamp=fgets($tp);
//Heure actuelle
$time=time();
//On détermine si plus de 20 minutes sont passées.
if(($time-20*60)<$timestamp)
die("Erredur");
$nombre_tour_passe=floor(($time-$timestamp)/(20*60
));
$an=date("Y",$time);
$moi=date("m",$time);
$jour=date("d",$time);
$heures=date("G",$time);
$minutes=date("i",$time);
//On prépare le timestamp qui correspondra au mome
nt du dernier tour.
if($minutes<20)
$minutes=0;
elseif($minutes<40)
$minutes=20;
elseif($minutes<60)
$minutes=40;
//On écrit, et on dévrouille tout le timestampet c
ie
$n_timestamp=mktime($heures,$minutes,0,$moi,$jour,
$an);
rewind($tp);
fwrite($tp,$n_timestamp);
flock($tp,LOCK_UN);
fclose($tp);
$old_an=date("Y",$timestamp);
$old_moi=date("m",$timestamp);
$old_jour=date("d",$timestamp);
//Le nombre de fois que miniuit est passé
$nombre_minuit_passe=(int)
(mktime(0,0,0,$moi,$jour,$an)-mktime(0,0,0,$old_mo
i,$old_jour,$old_an))/86400;
return
array("tour_passe"=>$nombre_tour_passe,"jour_passe
"=>$nombre_minuit_passe);
}
ZEN, dans chaque page :
function chronometre_tours()
{
//On récupère le timestamp enregistre
$timestamp=@fopen("next_tour.txt","r");
//SI il est vérouillé c´est qu´on maj :D
if(!$timestamp)
{
creer_ficher();
die("bug");
}
$timestamps=fgets($timestamp);
//Heure actuelle
$time=time();
//On détermine si plus de 20 minutes sont passées.
if($time-20*60>=$timestamps)
{$a=fopen(ROOT."tours_augmentation.php","r");
fclose($a);
echo "marche oonn";
}
fclose($timestamp);
}
function creer_ficher()
{
$t=fopen("next_tour.txt","w");
fwrite($t,time());
}
J´aie u un peu de mal.
C´est simple. Ca prend un fichier txt, et ca met l´heure dedans. Des quelqu´un va sur la page, si un certains délait c écoulé(ici 20 mins(20*60)), ben le script se lance. (fopen(lescript.php))
le script vérifie k il doit bien se lancer, il vérouillre le fichier txt en écriture et en lecture pour que personne le sould
Bonil est a amélioré(fodrait enlever la fonction de création de jeux)
Bref.