/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Oprette cronjobs fra PHP
Fra : Martin Larsen


Dato : 06-03-06 13:09

Davs

Via mit kontrolpanel hos Danhost kan jeg oprette cronjobs. Fint nok, det
virker jo, men jeg er interesseret i selv at lave et lille interface til
cronjobs i php. Altså så man kan oprette og redigere cronjobs online i
en browser.

Jeg ved meget om PHP, men ikke så meget om cronjobs, så jeg tænkte på om
nogen her kan komme med et par gode råd?

Evt. som henvisninger til open source php værktøjer jeg kan downloade og
kigge i, hvis den slags findes.

Takker og bukker
Martin

 
 
Geert Lund (06-03-2006)
Kommentar
Fra : Geert Lund


Dato : 06-03-06 21:11

Martin Larsen wrote:

> Jeg ved meget om PHP, men ikke så meget om cronjobs, så jeg tænkte på om
> nogen her kan komme med et par gode råd?

Ja, jeg kan tvivle meget på at din webhoteludbyder tillader dig
aktivere, redigere og slette cronjobs på systemet gennem PHP uden om dit
kontrolpanel.

Men ellers ville det jo hjælpe lidt hvis du husker at beskrive lidt om
PHP version, operativsystem, har du shell adgang osv.?

En løsning på dit problem kunne dog - hvis alt andet ikke er tilladt -
at du laver via dit kontrolpanel et cronjob der kører et PHP script
hvert minut - og du i dette script udtrækker dine egne informationer fra
fx en database om hvilke cronjobs du vil køre på hvilke tidspunkter.


--
Med venlig hilsen
Geert Lund,
www.GLD.dk

Martin Larsen (06-03-2006)
Kommentar
Fra : Martin Larsen


Dato : 06-03-06 22:47

Geert Lund wrote:

> Men ellers ville det jo hjælpe lidt hvis du husker at beskrive lidt om
> PHP version, operativsystem, har du shell adgang osv.?

Min ide var faktisk at lave et modul til et cms, så folk inde fra
systemet kunne oprette cronjobs. Derfor kan jeg af gode grunde ikke
beskrive php-version etc. da det jo er forskelligt fra sted til sted.

Men jeg har indset at der er serverrestriktioner som gør dette til en
ufarbar vej.

Tak for svaret.

Hilsen
Martin

Geert Lund (06-03-2006)
Kommentar
Fra : Geert Lund


Dato : 06-03-06 23:12

Martin Larsen wrote:

> Men jeg har indset at der er serverrestriktioner som gør dette til en
> ufarbar vej.

Altså - kig evt. efter fakecron scripts eller lign. - ulempen ved den
slags er blot at det kræver at en bruger loader fx din forside for at
"cron" sættes igang. Men kan være en løsning til webhoteller hvor man
ikke har adgang til rigtige cronjobs/scheduling.

(ideen i fakecron er at der hver gang en side loades på dit website
checkes om noget skal køres og det fungerer således som et cronjob, men
kræver som sagt at man har et site med regelmæssige visninger for det
kan betale sig)


--
Med venlig hilsen
Geert Lund,
www.GLD.dk

Martin Larsen (06-03-2006)
Kommentar
Fra : Martin Larsen


Dato : 06-03-06 23:34

Geert Lund wrote:

> (ideen i fakecron er at der hver gang en side loades på dit website
> checkes om noget skal køres og det fungerer således som et cronjob, men
> kræver som sagt at man har et site med regelmæssige visninger for det
> kan betale sig)

Jeg kender godt den model, og jeg tror at det må blive noget i den
retning. Med mindre ens cronjobs skal køre med meget kort interval, fx
minutter, så tror jeg at det er en udmærket løsning. Hvis der ikke er
nogen besøgende, så har man groft sagt heller ikke brug for cronjobs

Hilsen
Martin

Benny Nissen (06-03-2006)
Kommentar
Fra : Benny Nissen


Dato : 06-03-06 23:34

Martin Larsen wrote:

> Min ide var faktisk at lave et modul til et cms, så folk inde fra
> systemet kunne oprette cronjobs. Derfor kan jeg af gode grunde ikke
> beskrive php-version etc. da det jo er forskelligt fra sted til sted.
>
> Men jeg har indset at der er serverrestriktioner som gør dette til en
> ufarbar vej.

Hmm .. hvis du selv har adgang til at køre cron-jobs kan du vel lade dit
'master-cron' kalde et script, der udfører bruger-cron-jobs på bestemte
intervaller ? Så kan brugerne f.eks. oprette jobs, der gemmes i en db,
og bliver udført, når dit master-cron-job udfører scriptet.


--
Benny Nissen
www.bennynissen.dk

Martin Larsen (07-03-2006)
Kommentar
Fra : Martin Larsen


Dato : 07-03-06 00:49

Benny Nissen wrote:

> Hmm .. hvis du selv har adgang til at køre cron-jobs kan du vel lade dit
> 'master-cron' kalde et script, der udfører bruger-cron-jobs på bestemte
> intervaller ? Så kan brugerne f.eks. oprette jobs, der gemmes i en db,
> og bliver udført, når dit master-cron-job udfører scriptet.

Korrekt. Men ideen var at lave et script så andre - på deres websted -
kunne oprette cronjobs. Uden at vide ret meget om dette. Hvis de først
kan lave masterjobbet, kan de nok også lave resten.

Men hvis man accepterer at der lige skal nogen forbi sitet engang
imellem for at holde gryden i kog, så er løsningen udmærket.

Og ellers kan man jo oprette gratis cronjobs andre steder, fx
http://www.cron-work.de/

Hilsen
Martin

Benny Nissen (07-03-2006)
Kommentar
Fra : Benny Nissen


Dato : 07-03-06 01:02

Martin Larsen wrote:
> Benny Nissen wrote:
>
>> Hmm .. hvis du selv har adgang til at køre cron-jobs kan du vel lade
>> dit 'master-cron' kalde et script, der udfører bruger-cron-jobs på
>> bestemte intervaller ? Så kan brugerne f.eks. oprette jobs, der gemmes
>> i en db, og bliver udført, når dit master-cron-job udfører scriptet.
>
> Korrekt. Men ideen var at lave et script så andre - på deres websted -
> kunne oprette cronjobs. Uden at vide ret meget om dette. Hvis de først
> kan lave masterjobbet, kan de nok også lave resten.

Nå, så har jeg ikke udtrykt mig forståeligt nok (eller har misforstået
noget).

Altså:

Du laver et cron-job, som kører én gang i timen f.eks.

Dette cron-job kalder et script, som gør følgende:

1. Læser en database med intervaller, url'er m.v.

2. Afhængig af interval, kaldes de forskellige url'er.

Det er så brugerne der opretter intervaller (i trin af én time) og
url'en der skal kaldes. Mere skal de ikke kunne.


> Men hvis man accepterer at der lige skal nogen forbi sitet engang
> imellem for at holde gryden i kog, så er løsningen udmærket.

Der skal ikke nogen forbi engang imellem, for det er jo netop det, dit
cron-job skal klare.

Det bliver så ét cron-job, der gennem et script kalder andre sider, så
det virker som mange cron-jobs.

--
Benny Nissen
www.bennynissen.dk

Martin Larsen (07-03-2006)
Kommentar
Fra : Martin Larsen


Dato : 07-03-06 09:10

Hej Benny


> Nå, så har jeg ikke udtrykt mig forståeligt nok (eller har misforstået
> noget).

Eller også er det mig som ikke udtrykker mig ordentligt

Det jeg mener er: En bruger opretter en hjemmeside på et givent
webhotel. Vi antager det er et php-baseret hotel.

Jeg har intet med dette webhotel at gøre. Brugerne downloader bare mit
script lige som alle de tusinder andre php-scripts man kan hente rundt
omkring. De fortæller ikke mig at de har downloadet scriptet osv.

Når de kører scriptet, udfylder de i webinterfacet nogle tidspunkter og
- typisk - en php-fil som skal køres med de givne intervaller. De aner
ikke en brik om at oprette cronjobs, ved ikke engang om de har et
kontrolpanel som tillader det. De ved bare at de fx 1 gang i timen har
brug for at køre et givent script.

Altså skal mit script kalde serverens "crontab" kommando etc. og oprette
det ønskede cronjob.

Med andre ord: brugerne har ingen mulighed for, eller viden om, hvordan
man opretter det første cronjob som periodisk kalder "snydecronjobbet".


Hilsen
Martin

Benny Nissen (07-03-2006)
Kommentar
Fra : Benny Nissen


Dato : 07-03-06 10:41

Martin Larsen ramte sit keyboard den 07-03-2006 09:09 og fik dette ud af
det:

> Det jeg mener er: En bruger opretter en hjemmeside på et givent
> webhotel. Vi antager det er et php-baseret hotel.
>
> Jeg har intet med dette webhotel at gøre.

Det var så det, jeg ikke havde fået fat i. Jeg troede du ville tilbyde
det på en bestemt server, hvor du var kunde i forvejen (eller udbyder).

--
Benny Nissen
www.bennynissen.dk

Frederik Sunne (09-03-2006)
Kommentar
Fra : Frederik Sunne


Dato : 09-03-06 15:14

Martin Larsen wrote:
> Davs
>
> Via mit kontrolpanel hos Danhost kan jeg oprette cronjobs. Fint nok, det
> virker jo, men jeg er interesseret i selv at lave et lille interface til
> cronjobs i php. Altså så man kan oprette og redigere cronjobs online i
> en browser.
>
> Jeg ved meget om PHP, men ikke så meget om cronjobs, så jeg tænkte på om
> nogen her kan komme med et par gode råd?
>
> Evt. som henvisninger til open source php værktøjer jeg kan downloade og
> kigge i, hvis den slags findes.
>
> Takker og bukker
> Martin

Tjek om:
http://www.scriptsearch.com/cgi-bin/jump.cgi?ID=7575

Kan bruges.

Frederik

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste