Avatar billede hemberg Forsker
14. august 2005 - 12:30 Der er 10 kommentarer og
2 løsninger

Næste record i DB

Hejsa,

Ja jeg ved overskriften lyder åndsvag men det er nu det, at det handler om. Jeg har lavet et billedgalleri hvor man selvfølgelig kan bladre frem og tilbage i billederne. Denne funktion er id basseret så fra er id+1 og tilbage er id-1. Og det virker jo fantastisk. Lige indtil jeg fjerner et billed midt i serien. Så går det naturligvis galt. Er der nogen der har en smart løsning i ærmet for hvordan det ellers kan laves ?? Vi er et par stykker der har grublet lidt over problemet. Men jeg kan ikke lige komme i tanke om noget!! Det ville være lidt smart hvis man kunne lave en form for kalibrering af accessDB online, sådan at der aldrig kom huller i id'erne. Men det tror jeg ikke er muligt..
Avatar billede busschou Praktikant
14. august 2005 - 12:32 #1
lyder som om I skal kigge lidt på noget paging
http://activedeveloper.dk/artikler/default.asp?articleid=31
Avatar billede busschou Praktikant
14. august 2005 - 12:33 #2
alternativt kan man gemme hele recordsettet i en session samt en tæller
Og så kan man blot benytte rs.movenext indtil man har talt så langt man ønsker
Avatar billede busschou Praktikant
14. august 2005 - 12:39 #3
det med en kalibrering tror jeg ikke er muligt, og det vil samtidig afhængig af databasens størrelse jo tage en rum tid
Avatar billede hemberg Forsker
14. august 2005 - 18:38 #4
HMMMMM Ja, Noget af det er godt. Men han bruger jo også intPage+1 og intPage-1 hvilket jo vil sige at jeg skal bruge intId+1 og intId-1. Og så er problemet der jo igen. Hvordan virker det der session. Er det noget med: Selec * from Pictures AS session("pictures"). eller sådan noget. Og kan man bruge rs.movenext inde i en session ??
Avatar billede busschou Praktikant
14. august 2005 - 22:56 #5
så vidt jeg ved kan du sætte en session til at være et tal, en streng eller et objekt osv
Så du burde kunne lave en
--
Set rs = conn.execute("select * From tabel")
set session("rs") = rs
--
På din side laver du så et link ala "default.asp?side=1" eller "default.asp?side=-1"
Dernæst kan du lave en session("rs").movenext eller moveprevious
Det er utestet og muligt du skal hive rs ud af sessionen først
moveprevious kan desuden kun benyttes såfremt du ikke bruger en connection til din sql men et recordset med en dynamisk cursor
Du kunne også bruge links som "default.asp?side=24"
og så blot 24 gange lave en movenext, hvorved du ender på den plads
Avatar billede softspot Forsker
15. august 2005 - 20:25 #6
Er det ikke muligt at hente id'er for billederne før og efter det billede man viser og så blot benytte disse i sine links...?

At gemme recordsets i session lyder dyrt (at gøre dem dynamiske endnu dyrere). Jeg ved ikke lige hvordan man gør et recordset disconnected, for hvis det skal have forbindelse til databasen skal connection-objektet også opretholdes og den løsning kan ikke bære ret mange besøgende ad gangen...
Avatar billede busschou Praktikant
15. august 2005 - 20:28 #7
det er måske rigtig men så kunne man jo hive dem ud af databasen i et todimensionalt array ;o)
session("rs") = rs.GetRows()
Så slipper man for at der skal være forbindelse til databasen
Avatar billede softspot Forsker
15. august 2005 - 20:54 #8
*LOL* (arrays igen)

Ja, men så skal man bare være opmærksom på to forrhold:

1. caching som ikke giver up-to-date informationer (hvis det ellers er vigtigt)
2. det fylder stadig mere end at lave et opslag i db ved billedeskift.
Avatar billede busschou Praktikant
15. august 2005 - 20:56 #9
hehe ja vidste heller ikke helt om jeg turde foreslå det ;o)
Avatar billede hemberg Forsker
22. august 2005 - 11:36 #10
Jeps. Sorry den lange svar tid. Der kom lige lidt hverdag i vejen. Anyway så er problemet løst nu. Ved hjælp af arrays.. Men metoden med sessions virker garenteret også. Tror i skal dele point hvis der ikke er nogen der føler sig trådt over tæerne... Læg et svar... Tak for hjælpen..
Avatar billede softspot Forsker
22. august 2005 - 12:51 #11
Dele med busschou!? Til hver en tid :D
Avatar billede busschou Praktikant
22. august 2005 - 13:05 #12
oki doki med mig ;o)
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