Forum » Programiranje » Koledar in ponavljajoči se dogodki
Koledar in ponavljajoči se dogodki
darh ::
Ideja:
Delam na enem koledarju... notr se bo lahko vpisovalo taske in ti bodo lahko tudi ponavljajoči...
Omejitve:
Sistem bi rad naredil tako, da je za vsak task potreben samo en entry v bazi, torej, nimam za ponavljajoče dogodke, ki se ponavljajo 1x na mesec potem 12 x nevemkolikolet vnosov... Do dodatnega vnosa pri ponavljajočem dogodku bi prišlo, če bi recimo ob dogodki ki se ponavlja 1x na mesec imeli decembra malo drugačni plan, potem bi dogodek na novo vnesel, ga spremenil in povezal z ponavljajočim, da ne pride do dvojnega prikaza..
Problem:
No.. dokler se dogodki ponavljajo 1x mesečno, 1x dnevno, 1x letno, je vse vredu, ko bi pa rad kake "zapletenejše" ponovitve, se mi pa zatakne... naprimer... samo sobote in nedelje, mogoče 1x na teden v sredno ? Vsak drugi mesec, samo 2, 4, 8 mesec pa še to samo ob sredah in četrtkih.... got it ?
Kako bi čim elegantnejše rešili ta problemček?
p.s.: programski jezik načeloma ni issue, delam pa v PHPju, zapisujem pa v mySQLovo bazo...
Delam na enem koledarju... notr se bo lahko vpisovalo taske in ti bodo lahko tudi ponavljajoči...
Omejitve:
Sistem bi rad naredil tako, da je za vsak task potreben samo en entry v bazi, torej, nimam za ponavljajoče dogodke, ki se ponavljajo 1x na mesec potem 12 x nevemkolikolet vnosov... Do dodatnega vnosa pri ponavljajočem dogodku bi prišlo, če bi recimo ob dogodki ki se ponavlja 1x na mesec imeli decembra malo drugačni plan, potem bi dogodek na novo vnesel, ga spremenil in povezal z ponavljajočim, da ne pride do dvojnega prikaza..
Problem:
No.. dokler se dogodki ponavljajo 1x mesečno, 1x dnevno, 1x letno, je vse vredu, ko bi pa rad kake "zapletenejše" ponovitve, se mi pa zatakne... naprimer... samo sobote in nedelje, mogoče 1x na teden v sredno ? Vsak drugi mesec, samo 2, 4, 8 mesec pa še to samo ob sredah in četrtkih.... got it ?
Kako bi čim elegantnejše rešili ta problemček?
p.s.: programski jezik načeloma ni issue, delam pa v PHPju, zapisujem pa v mySQLovo bazo...
Excuses are useless! Results are priceless!
b ::
Ravno to dela na Unix sistemih cron.
Za kaksno verzijo cron-a bos ze nasel source in bos videl kaksno
logiko ima, zapisi pa so v eni vrsti. Mogoce ti bo zadoscalo,
neumno bi bilo izumljat toplo vodo.
Pravzaprav ti lahko opisem kako deluje.
Vsak ponavljajoc dogodek je opisan s sestimi polji:
* minute (0-59)
* ure (0-23)
* dan v mesecu (1-31)
* mesec
* dan v tednu
* ukaz
* * * * * ukaz
pomeni da se bo ukaz izvedel vsako minuto
* 8-16 * * Mon ukaz
pomeni, da se bo ukaz izvedel vsako minuto vsak ponedeljek
od 8-16.
Na kaksni linux kisti vpisi ukaz man 8 cron ter man 1 crontab in
man 5 crontab
lp,
Borut.
Za kaksno verzijo cron-a bos ze nasel source in bos videl kaksno
logiko ima, zapisi pa so v eni vrsti. Mogoce ti bo zadoscalo,
neumno bi bilo izumljat toplo vodo.
Pravzaprav ti lahko opisem kako deluje.
Vsak ponavljajoc dogodek je opisan s sestimi polji:
* minute (0-59)
* ure (0-23)
* dan v mesecu (1-31)
* mesec
* dan v tednu
* ukaz
* * * * * ukaz
pomeni da se bo ukaz izvedel vsako minuto
* 8-16 * * Mon ukaz
pomeni, da se bo ukaz izvedel vsako minuto vsak ponedeljek
od 8-16.
Na kaksni linux kisti vpisi ukaz man 8 cron ter man 1 crontab in
man 5 crontab
lp,
Borut.
Zgodovina sprememb…
- spremenilo: b ()
darh ::
to poznam... samo zadeva bo imela web interface in nekaj userjev.... to je pa brezveze obešat na cron, pa še toplo vodo bi rad izumu noo :)
Excuses are useless! Results are priceless!
b ::
Saj ne gre za to da bi ti to obesil na cron, ampak da
uporabis podoben nacin zapisa, ker je preprost.
Ce pa seveda ne ustreza tvojim zeljam, si izmisli kaj drugega :-)
lp,
Borut.
uporabis podoben nacin zapisa, ker je preprost.
Ce pa seveda ne ustreza tvojim zeljam, si izmisli kaj drugega :-)
lp,
Borut.
darh ::
sej ravno to je bil problem.. spomnt se način zapisa....
Excuses are useless! Results are priceless!
darh ::
ok.. stvar rešena... elegantno... z zelo oskubljeno cron foro... ;)
Excuses are useless! Results are priceless!
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | PHP timerOddelek: Izdelava spletišč | 1412 (1117) | 'FireSTORM' |
» | [Python, Linux] Poganjanje skripte s crontabOddelek: Programiranje | 1467 (1290) | morbo |
» | crontab - zagon vsake 3 tedneOddelek: Operacijski sistemi | 1161 (1008) | kronik |
» | ftp arhiviranje, linuxOddelek: Operacijski sistemi | 1222 (1117) | urarrr |
» | Iskanje naslednje ponovitve - najboljši algoritem (strani: 1 2 )Oddelek: Programiranje | 4435 (3493) | Thomas |