Hallo!

Ik zit met een probleem. Ik gebruik nu dit:

<?

if(isset($UPDATE_DB)) {
$dbres = mysql_query("SELECT UNIX_TIMESTAMP(`time`) AS `time`,`name` FROM `[cron]`");
while($x = mysql_fetch_object($dbres))
$update[$x->name] = $x->time;

if(floor($update['hour']/3600) != floor(time()/3600)) {
$dbres = mysql_query("SELECT GET_LOCK('hour_update',0)");
if(mysql_result($dbres,0) == 1) {
$cron_pass = "wachtwoord";
mysql_query("UPDATE `[cron]` SET `time`=NOW() WHERE `name`='hour'");
include("uur.php");
mysql_query("SELECT RELEASE_LOCK('hour_update')");
}
}
?>

Hiermee voert hij om het uur "uur.php" uit. Nu wil ik iets om de minuut uitvoeren. Dit leek mij heel simpel maar het werkt niet:S Hij doet het gewoon niet om de minuut maar gewoon helemaal niet! Kan iemand mij helpen om het om de minuut uit te laten voeren?

Alvast bedankt!
nuja als je iets gedurende een periode dient uit te voeren kan je gebruik maken van CRONS dat vind je norm terug op je control panel van je host
Ik host hem zelf.. enig idee waar ik dan moet kijken? In uur.php staan dit soort dingen:

<?
mysql_query("UPDATE `[members]` SET `hour`=`hour`+1");
?>

Mischien kan het ook op een totaal anderen manier? of moet ik gewoon paar nummertjes in de vorige code die ik posten veranderen?
host je zelf?
vi /etc/crontab
[google]crontab[/google]

Aangenomen dat je een Unix server gebruikt
Ik gebruik Apache server met PHP en MySQL.. Werkt dat ook?
Uhm het spijt me, maar dit lijkt verdacht veel op een criminal die je zomaar van internet hebt geplukt. Klopt dat? Ja, wij zijn meer van de sprookjes hier he, die criminals vinden wij nog te eng.
EN nou ja, het antwoord is: van die 3600 moet je maken: 60.
Gedeeltelijk. Ik heb heb deze gedeeltelijk gebruikt maar totaal niet van internet geplukt. Ik maak alles zelf alleen ik snap niet hoe je iets om de zoveel tijd uitvoert daarom heb ik dat script gebruikt. Zijn er anderen manieren?
Maar maak dan eens van "3600" --> "60".
Ja dat dacht ik dus ook al:p ik heb ook overal waar "hour" staat "minute" neergezet maar dan gebeurt er iets heel raars. Om de minuut gebeurt niks maar als ik $UPDATE_DB uitvoer voert hij hem een keer uit (dus eigenlijk als je hem laat altijd maar om de minuut niet)
Nee, minute neerzetten doet sowieso nets, dan moet je hele DB wijzigen. Probeer eens zo:
<?

if(isset($UPDATE_DB)) {
$dbres = mysql_query("SELECT UNIX_TIMESTAMP(`time`) AS `time`,`name` FROM `[cron]`");
while($x = mysql_fetch_object($dbres))
$update[$x->name] = $x->time;

if(floor($update['hour']/60) != floor(time()/60)) {
$dbres = mysql_query("SELECT GET_LOCK('hour_update',0)");
if(mysql_result($dbres,0) == 1) {
$cron_pass = "wachtwoord";
mysql_query("UPDATE `[cron]` SET `time`=NOW() WHERE `name`='hour'");
include("uur.php");
mysql_query("SELECT RELEASE_LOCK('hour_update')");
}
}
?>
Het werkt! ik ben er ook uit hoe ik hour en minute tegelijk kan gebruiken! Bedankt!

Reageren