Katalog ASP odkaz∙: Hledßte informace o ASP? Zkuste nßÜ nov² katalog odkaz∙ na ASP weby. Vφce zde...
TextLink.cz
VyÜlo: 9.1.2001 Rubrika: ASP - ZdrojovΘ k≤dy

Jak zajistit pravidelnΘ spouÜt∞nφ scriptu na serveru bez zßsahu administrßtora?
Chcete se nauΦit spustit script ka₧dou p∙lnoc bez toho, ani₧ by jste museli kontaktovat sprßvce serveru, kter² by provedl pat°iΦnΘ nastavenφ na serveru? P°eΦt∞te si tento Φlßnek ve kterΘm se pomocφ funkce Scheduler() nauΦφte spouÜt∞t libovoln² k≤d ka₧d² den v pravidelnΘm intervalu. Chcete v∞d∞t jak? Co je k tomu pot°eba? Kde funkci vyu₧φt? Zkuste si p°eΦφst tento Φlßnek a dozvφte se to...

Provozujete-li nap°φklad zpravodajsk² server, kter² publikuje den co den novΘ Φlßnky, mohli by jste jej obohatit o zajφmavou funkci, kterou majφ Φtenß°i vesm∞s rßdi. KonkrΘtn∞ mßm namysli zasφlßnφ novinek e-mailem resp. zasφlßnφ titulk∙ Φlßnk∙ p°φmo do jejich mailboxu.

Jestli₧e se rozhodnete tuto Φinnost provßd∞t ruΦn∞, p°φsßhßm Vßm, ₧e se z toho Φasem zblßznφte resp. nezblßznφte, ale nechßte toho a zaΦnete hledat jinΘ °eÜenφ(jß jsem to vydr₧el 18 m∞sφc∙).

Jednφm z elegantnφch zp∙sob∙ je vyu₧itφ libovolnΘ komponenty pro poÜtovnφ slu₧by(zasφlßnφ e-mail∙) jako je CDONTS nebo Jmail pop°φpad∞ PCXMail.

Ve spoluprßci s funkcφ Scheduler, kterß zajistφ spuÜt∞nφ danΘho k≤du p°i prvnφ nßvÜt∞ve po p∙lnoci, Vßm vznikne hotovß v∞c, kterß zajistφ automatickΘ(tφm pßdem i relativn∞ spolehlivΘ) rozesφlßnφ novinek e-mailem.

Samoz°ejm∞ lze funkci Scheduler vyu₧φt i k jin²m aktivitßm ne₧ je rozesφlßnφ novinek e-mailem. Namßtkou m∞ napadß r∙znΘ zpracovßnφ dat p°edchozφho dne a vytvo°enφ novΘho prost°edφ pro den nßsledujφcφ a podobn∞.

Funkce Scheduler

<%
Function Scheduler()
Dim FSO, I_cesta, E_cesta, cesta, Date_soubor, Soubor

Set FSO = Server.CreateObject("Scripting.FileSystemObject")
   I_cesta = Request.ServerVariables.Item("PATH_TRANSLATED")
   E_cesta = Left(I_cesta, Len(I_cesta) - 3)
   Cesta = E_cesta & "txt"
Set Soubor = FSO.OpenTextFile(Cesta, 1)
       Date_soubor = Soubor.ReadAll
      Soubor.Close
       Set Soubor = Nothing

If Trim(FormatDateTime(date_soubor)) = Cstr(date()) Then
       Set Soubor2 = FSO.OpenTextFile(Cesta, 2, True)
       Soubor2.Writeline Date() + 1
       Soubor2.Close
        Set Soubor2 = Nothing
        Set FSO = Nothing

'-ZDE VLOZTE KOD, KTERY CHCETE PROVEST KAZDOU PULNOC-



'-----------------------------------------------------
Else
'-ZDE JE MOZNE[neni nutne] UMISTIT KOD, KTERY SE NEPROVEDE PRAVE O PULNOCI :)



'----------------
End If

End Function

'Funkci Scheduler si vlo₧te na zaΦßtek strßnky a v jejφm pr∙b∞hu ji zavolejte 'pomoci Scheduler()
intVystup = Scheduler()
%>

Co funkce umφ?

Scheduler Vßm zajistφ ka₧dodennφ spouÜt∞nφ k≤du, kter² si do nφ vlo₧φte.

Co je nutnΘ pro provoz?

Jestli₧e chcete uplatnit schopnosti funkce Scheduler, budete muset postupovat nßsledovn∞:
  • Zdroj procedury zkopφrovat do strßnky, kterß mß aktivovat rozesφlßnφ Φi jinou Φinnost. Ve strßnce tuto proceduru zavolat a tφm(je-li po p∙lnoci) aktivovat po₧adovanou Φinnost.
  • Nastavit na serveru(jestli₧e se tak ji₧ nestalo) povolenφ zßpisu do textovΘho souboru.
  • PoΦkat na prvnφ p∙lnoc, kdy si funkci odzkouÜφte(samoz°ejm∞ tento bod nenφ povinn² :-).

Kam se uklßdajφ data?

Informace o tom, kdy se mß funkce op∞t aktivovat se ukßdß do textovΘho souboru, kter² nese toto₧n² nßzev s VaÜφ strßnkou ve kterΘ je funkce spuÜt∞na, ale koncovka asp je nahrazena txt.

P°φklad:

Bude-li se VaÜe strßnka ve kterΘ tuto funkci volßte jmenovat index.asp, data se ulo₧φ do stejnΘho adresß°e v souboru index.txt.

Zden∞k Cendra
ceskywap@ceskywap.cz



   Souvisejφcφ Φlßnky
TextLink.cz