Avatar billede tblaster Nybegynder
04. august 2002 - 19:20 Der er 10 kommentarer og
1 løsning

Vis et tilfældig billed

Hejsa

Hvordan får jeg min side til at vise et tilfældig billed med en tekst underneden? Og hvordan skal jeg gøre min kode opmærksom på hvor den skal hente informationerne om hvilke billeder og med hvilken tekst.
Avatar billede eagleeye Praktikant
04. august 2002 - 19:28 #1
Gemmer du billeder stier/billede + teksten i en database ?
Avatar billede tblaster Nybegynder
04. august 2002 - 19:31 #2
Jeg har ikke lavet noget endnu ... jeg håbede meget på at det bare kan laves med en txt fil ...
Avatar billede oasen Nybegynder
04. august 2002 - 19:32 #3
Hvis du blot skal bruge et tilfældigt tal (ID), kan du gøre sådan:

LowerBound = 1
UpperBound = 765
Randomize
RandomNumber = Int(Rnd * UpperBound) + LowerBound
Avatar billede eagleeye Praktikant
04. august 2002 - 19:33 #4
Et eks som vælger en random linie fra en tekst fil:

http://www.aspfaqs.com/aspfaqs/ShowFAQ.asp?FAQID=184
Avatar billede tblaster Nybegynder
04. august 2002 - 22:46 #5
Den skal jo både vise en tekst og et billed ...

Oasen ... det kan jeg da kun bruge ved db eller hva?
Avatar billede oasen Nybegynder
04. august 2002 - 23:39 #6
Nææ...også i forb. med en textfil.

Hvis der f.eks. er 76 linier i filen, og det tilfældige tal er 34, kan du bede den om kun at læse den 34-tyvende linie:


For intLine = 1 to RandomNumber - 1
  f.SkipLine
Next

' udskriv linie nr. 34
Response.write f.ReadLine


Men jeg er ikke helt klar over, hvad det egentlig er du efterlyser.
Avatar billede tblaster Nybegynder
06. august 2002 - 14:07 #7
Oasen ... kan jeg få dig til at lave et eksempel på hvordan txt filen skal se ud og hvordan hele koden der henter informationerne ser ud?
Avatar billede oasen Nybegynder
07. august 2002 - 18:11 #8
Tjaa...tjoo..

Opret en ganske almindelig tekstfil og kald den f.eks. "test.txt"
I denne kan du i Notepad lave 20 linier. F.eks.:

a
b
c
d
e
f
osv...

Læg så nedenstående stykke kode i en asp-fil:

*************************************************

<html><head></head><body>
<%
LowerBound = 1
UpperBound = 20
Randomize
RandomNumber = Int(Rnd * UpperBound) + LowerBound

Dim fso, f, filespec
Set fso = CreateObject("Scripting.FileSystemObject")
filespec = Server.Mappath("/test.txt")
Set f = fso.OpenTextFile(filespec,1)

For intLine = 1 to RandomNumber - 1
  f.SkipLine
Next

' udskriv linie nr. ?
Response.write "Tilfældig linie: Nr. " & f.ReadLine

f.close
%>

</body></html>
Avatar billede tblaster Nybegynder
07. august 2002 - 19:46 #9
Takker ... det var lige sådan noget jeg skulle bruge ... :-D

Hvis der er andre der vil bruge det så skal de lige siges at linje 10 i asp filen skal rettes fra:
filespec = Server.Mappath("/test.txt")
til:
filespec = Server.Mappath("test.txt")

Ellers virker det ikke!

Derudover forsynet jeg min side med følgende kode for at skikre mig at siden ikke blev cached så billederne blev gemt og at der derfor ikke blev vist et nyt billede!

<%
    Response.Expires = 60
    Response.Expiresabsolute = Now() - 1
    Response.AddHeader "pragma","no-cache"
    Response.AddHeader "cache-control","no-store"
    Response.CacheControl = "no-cache"
    Response.Buffer = True
%>
Avatar billede oasen Nybegynder
08. august 2002 - 15:56 #10
Du kan nøjes med denne:

Response.Expires = -180

Ved at sætte den bagud i tiden tages der også hensyn til tidszoner, sommertid m.v.
Avatar billede oasen Nybegynder
08. august 2002 - 15:58 #11
Buffer'en har intet at gøre med cache'n - den angiver bare, hvordan siden skal indlæses hos klienten.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester