Avatar billede dael Nybegynder
08. marts 2003 - 13:25 Der er 9 kommentarer og
1 løsning

NEXT og PREVIOUS fra databasen

Har følgende der driller mig lidt.

Har et stykke asp script hvor man for vist NAVN og ADRESSE ved valg af  ID.  Min ID i min database er sat til autonummerering.

Min SELECT:

sSQL = ""
sSQL = sSQL & " SELECT * FROM kontakt WHERE ID = " & SQLVal(kontaktID) & " " & "ORDER BY navn" 

Så vis jeg skal ha' vist en bestemt person, er det som følgende : FILE.asp?ID=2

Nu kommer det der driller mig oppe i venstre hjørne vil jeg gerne havde en frem og tilbage knap, som skal vise Next og Previous fra min database. Det er ikke lige til, som jeg troede fordi der bliver nogle gange slette nogle NAVNE (ID'er) såååååååååå jeg kan jo ikke bare sige ID + 1 og ID - 1

håber nogen har en let løsning ??
Avatar billede eagleeye Praktikant
08. marts 2003 - 13:34 #1
Du er faktisk nød til at lave to SQL opslag for at finde next og prvios netop som du skriver fordi man får huller i ID rækken..

'Fin næste ID
SQL = "SELECT TOP 1 ID FORM kontakt WHERE ID > " & SQLVal(kontaktID) & " ORDER BY ID ASC"
Set rs = Conn.Execute(SQL)
if rs.EOF then
  'Der er ikke nogen næste, så den sidste vises nu
  nextID = ""
else
  nextID = rs("ID")
end if
rs.Close
'Find forrige ID
SQL = "SELECT TOP 1 ID FORM kontakt WHERE ID < " & SQLVal(kontaktID) & " ORDER BY ID DESC"
Set rs = Conn.Execute(SQL)
if rs.EOF then
  'Der er ikke nogen forrige, så den føste vises nu
  prevID = ""
else
  prevID = rs("ID")
end if
rs.Close


Så har du ID på den sæte i nextID og den forrige i prevID. Hvis nextID er tom = "" så det den sidte som vise er prevID = "" så er det den første som vises.
Avatar billede dael Nybegynder
08. marts 2003 - 13:40 #2
TAK !!! :O) du får også point'ne fra i-går !!!
Avatar billede txk Nybegynder
04. juni 2003 - 17:01 #3
hhhmm var lige ved at se på overstående problem fordi jeg havde det sammen... løsning ser meget rigtigt ud men hvad er det at :
SQLVal(kontaktID)
skal gøre ?
Avatar billede eagleeye Praktikant
04. juni 2003 - 17:25 #4
Umiddeltbart laver den en ' om til to '' eller sikre kontaktID er et tal for undgå SQL fejl.
Avatar billede txk Nybegynder
04. juni 2003 - 17:33 #5
SQLVal er ikke defineret
SQLVal= ????
Avatar billede eagleeye Praktikant
04. juni 2003 - 17:34 #6
Det er en function eks

function SQLval (s)
  if s <> "" then SQLval = replace(s,"'","''")
end function
Avatar billede txk Nybegynder
04. juni 2003 - 17:40 #7
ikke helt med på hvad du siger...
men hvis jeg laver lidt om i det :
SQLval = Request.QueryString("id")
SQL = "SELECT TOP 1 ID FORM tabel WHERE ID > " & SQLVal & " ORDER BY ID ASC"

giver det nogen mening at gøre ? hvis jeg gør overstående kommer jeg forbi den fejl jeg havde... men så viser den fejl i linje:
Set rs = Conn.Execute(SQL)
Avatar billede txk Nybegynder
04. juni 2003 - 17:50 #8
Nå jeg kan se at det jeg skrev overstående virkede....
der var fejl i Set rs = Conn.Execute(SQL) fordi.... der skal stå "from" og ikke "form" i det allerførst indlæg
Avatar billede eagleeye Praktikant
04. juni 2003 - 17:50 #9
Ja det ser rigtigt ud.
Avatar billede eagleeye Praktikant
04. juni 2003 - 17:50 #10
;) ja FROM ikke FORM det var en smutter.
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