Ne možeš tako nešto da uradiš samo pomoću php-a (tj. mislim da ne može

) zato što se php izvršava kada korisnik poseti stranu. Imaš jednu soluciju, a to je da kad se requestuje neka strana, proveriš koliko je prošlo vremena od poslednje provere polja i ako je prošao određen period vremena, proveriš ih sve i pošalješ mailove, nešto na ovaj fazon:
PHP kod:
// mozes da stavis u poseban include na pocetku stranice, ali odradicu cisto ovako
//include 'proveri_polja.php'
define("TABLE_CHECK_PERIOD", 60*60*10); // 60 sekundi * 60 minuta * 10 casova
//$result = mysql_query("SELECT * FROM table_check_config");
// uglavnom ovde pronadjes kada si poslednji put uradio check
if ($lastCheckTime < time() - TABLE_CHECK_PERIOD)
{
// posaljes mailove
// updateujes poslednje vreme
$time = time();
mysql_query("UPDATE table_check_config SET lastcheck = $time");
}
Jedan problem sa ovim je to što ako hoćeš da proveravaš na svakih 10 sati, a niko ti ne poseti sajt 2 dana, provera se neće izvršiti.
Ako imaš pristup shell-u možeš da iskoristiš
cron.
Imaš dole jedan primer, uglavnom uradio bi ovako nešto (zavisi kako je php instaliran, path će biti drugačiji, recimo ako imas lampp onda je default /opt/lampp/bin/php):
Kod:
0 */2 * * * /usr/local/bin/php -q /home/username/provera.php
*/2 znači da će se taj php file izvršiti na svaka 2 sata.