Executare script perioada definita de timp.

Discutii despre script-uri si coduri PHP-MySQL, precum si lucru cu XML in PHP.
tycyssg
Mesaje:58

Executare script perioada definita de timp.

Neata !

Vreau sa FAC un script ce imi va genera un sir de numere si sa-l execut cu un submit cred ca merge asa.
Dar vreau ca indiferent de situatie butonul sa poata fi apasat doar odata pe saptaman si daca s-ar putea sa ceara o parola pt a putea fi apasat.

CV sugestii? Ar merge cu set_time_limit?

MarPlo Mesaje:4343
Ca idee, trebuie sa salvezi intr-o baza de date timpul cand a fost executat acel submit, iar la fiecare executie sa verifici timpul curent cu cel din baza de date.
Daca e mai mult de cat vrei, se actualizeaza timpul cu cel curent in baza de date si executi ce cod vrei, altfel, daca e mai putin afisezi mesaj.
In rest, posteaza script-ul pe care-l faci si unde nu te descurci.

tycyssg Mesaje:58
Pai nu e mare lucru , gen

Cod: Selectaţi tot

if(isset($_POST['submit']){
$a = mt_rand(1,6);
$b = mt_rand(1,6);
$b = mt_rand(1,0);
// si tot asa pana la 6 variabile} 
Si la urma sa le afisez cu echo , numerele.Ei dar vreau ca sa execut scriptul asta odata pe saptamana.

MarPlo Mesaje:4343
Poti sa salvezi timpul intr-un fisier pe server si verifici timpul curent cu cel salvat ultima data. Acel fisier trebuie sa aibe permisiuni CHMOD de scriere 0777 sau 0755.
Exemplu:

Cod: Selectaţi tot

$file_time = 'save_time.txt';  // address and name of the file to save data
$last_time = file_exists($file_time) ? file_get_contents($file_time) : 0;  // get file data if exists
$now = time();

// if more than 1 week
if(($now -$last_time) > 7*24*3600) {
  // Execute your script ...

  // save current time
  if(!file_put_contents($file_time, $now)) echo 'Unable to save the file';
}
else echo 'Not 1 week';