On Sat, 9 Sep 2006 10:10:32 +0200, "finn elmgaard"
<agertoften@XXXstofanet.dk> wrote:
>Jeg har et problem, som måske ikke helt hører hjemme her, men alligevel.
>Har et site, der viser 10 billeder. Det er et online system, hvor der på
>serveren hver 5. minut tilføres et nyt billede. Der vises således altid de
>10 nyeste billeder, der udvælges på en asp side (har tidligere fået god
>hjælp til dette her i gruppen). Dette fungerer udmærket. Problemet er
>håndtering af fejlsituationer. Hvis der ved en fejl ikke tilføres et eller
>flere billeder til serveren, vil der stadig vises de 10 seneste billeder,
>men det vil jo ikke være 10 fortløbende billeder. Man kan sige, at der er en
>hul i billedrækken.
>
>Jeg kan godt løse det ved på min asp side at læse billedfilens header, hvori
>der findes en tidsstempling, og derved opdage om der er et hul i rækken af
>filer. Det kan så udløse en bemærkning på siden eller jeg kan redirecte til
>en anden side. Men denne løsning finder jeg ikke hensigtsmæssig, da denne
>procedure skal udføres hver eneste gang siden kaldes. Jeg kunne tænke mig en
>løsning, hvor jeg på serveren løbende tjekker hver ny fil og lader
>resultatet af dette tjek hejse et flag, hvis der er mangler en i rækken.
Tag et kig på Application-variable - de bruges lige som
Session-variable, men er ikke begrænset til den enkelte brugers
session.
Hvis du så gemmer listen over de 10 billeder, der skal vises i en
Application-bariabel (fx i et array), så kan du, når der kommer et nyt
billede, udføre check'et.
Hvis check'et ikke er Ok, er variablen uændret. Hvis det er Ok
tilføjes det nye billede til listen og det gamle fjernes - eller der
genereres en ny liste hver gang, hvis det er mest praktisk. Det sidste
er måske mest sikkert, da der også skal tages højde for, hvad der skal
ske, hvis applikationen genstartes (= der er ikke nogen
Application-variabel i forvejen).
>Jeg kan som sagt godt udføre tjekket på en asp-side, når den kaldes, men
>hvordan gør jeg det lige på serveren som en løbende rutine? Kan jeg med et
>VB script anvende FSO uden for en asp-fil? Eller noget lignende.
En måde at løse problemet på er at trigge en rutine, hver gang
ASP-siden kaldes, som kigger på, om det er mere end 5 min. siden, der
sidst er udført et check. Hvis ja, udføres check'et, hvis ikke,
udføres check'et ikke, og du bruger den liste, der er gemt som
Application-variabel.
OBS: Du skal selvfølgelig lige overveje, hvor mange brugere der er på.
Hvis der typisk kun er et par stykker hver 5. minut, så er der jo ikke
det store problem i, at checke for hver bruger, eller for hver gang
siden kaldes
Håber det bringer dig videre.
Good luck!
--
Jørn Andersen,
Brønshøj