Ola,

Ik wil een bepaalde actie ondernemen, maar alleen op een bepaald tijdtip, bijvoorbeeld in de eerste 3 minuten van ieder half uur. Dus tussen 10.00 en 10.03 en tussen 10.30 en 10.33. En dan weer tussen 11.00 en 11.03 en tussen 11.30 en 11.33 enz. en dat 24 uur per dag. Hoe kan ik dat het beste aanpakken? Iemand misschien tips wat de beste manier is om de tijd te berekenen?
Kan allemaal met javascript
Uh, mij lijkt eerder een cronjob van toepassing

Je kiest je 'tijdsinterval' en controleert dat met PHP. Met een paar if-statements moet je dan wel redelijk accuraat een script kunnen uitvoeren. Ik heb cronjobs zelf gebruikt voor automatisch backups maken en emailen naar mezelf.
Thanks Kris, maar ik wil het gewoon met PHP doen. Als iemand tussen 10.00 en 10.03 mijn site bezoekt, dan wil ik dat er een bepaalde actie wordt getriggerd.

Toevoeging op 16/12/2013 10:15:20:

@Albert, goed punt... maar ik wil het graag in PHP zelf doen. Ik ben vooral benieuwd wat de beste manier is om die tijdsintervallen te bepalen, dus hoe bepaal je of je in de 3 eerste minuten van het hele of het halve uur zit?
Je voert je php script uit via een cronjob. In jouw geval ( qua wat je omschrijft ), is dit exact wat je nodig hebt.

Cronjob is gewoon "taakbeheer" Jij wilt een actie uitvoeren om een bepaalde tijd. Wat voor actie dat is, is aan jou.
Ja, maar nogmaals dat is niet wat ik zoek. De situatie is niet altijd geldig (moeilijk uit te leggen) maar een cronjob kan ik in dit geval niet toepassen. Ik moet het dus echt in PHP oplossen. Heeft iemand tips?
Maar wat als je in die tijdsspanne van drie minuten juist geen bezoekers hebt?
Uh Ozzie, wat is de bedoeling. Wat probeer je te bereiken? En wat Aar zegt, wat als je dan geen bezoekers hebt.
>> Maar wat als je in die tijdsspanne van drie minuten juist geen bezoekers hebt?

Dan wordt de actie dus niet uitgevoerd :)

Mijn website gebruikt services. Normaal pluk ik deze uit de cache. Stel dat ik de cache verwijder dan moeten de services opnieuw worden aangemaakt. Dit gaat normaal gesproken uiteraard gewoon goed, maar het zou kunnen dat het een keer fout gaat. Als de services niet zijn ingeladen, kan de rest van m'n applicatie niks. In dit uitzonderlijke geval wil ik een error boodschap op het scherm tonen en de applicatie stoppen. Echter, ik wil natuurlijk ook mezelf waarschuwen (anders heb ik niet in de gaten dat er iets mis is) door een e-mail te sturen. En om dit laatste gaat het dus. Ik wil een check inbouwen waardoor ik niet ineens overspoeld wordt met tientallen e-mails. Op deze manier (door alleen op bepaalde tijdstippen e-mail te versturen) kan ik dat enigszins controleren. Dat is de gedachte erachter.
Gaat dit om de server of om jouw bezoekers?


Moet er om 10:40:00 iets veranderd worden aan de database of zo?
Of moet er iets op het scherm verschijnen van wie ook op jouw site zit?

"een bepaalde actie" is te vaag

Ozzie PHP op 16/12/2013 10:47:07

Ik wil een check inbouwen waardoor ik niet ineens overspoeld wordt met tientallen e-mails.


Houd gewoon een 'last_mail_sent' bij in de DB
Je kunt loggen wanneer dat "dingetje" is uitgevoerd. Als vanaf 10:04 blijkt dat het dingetje voor het tijdvak 10:00 - 10:03 niet werd uitgevoerd, voer je het alsnog uit.

Voor databasedingetjes kun je de Event Scheduler gebruiken.

Reageren