Avatar billede kivig Nybegynder
07. oktober 2004 - 11:13 Der er 8 kommentarer og
1 løsning

hente poster og liste dem separat ?

Hejsa.. Jeg har lavet en access db som indeholder 5 felter "id", "sidenavn", "overskrift", "filnavn", "dato"

Nu vil jeg gerne hente indhold til asp-siden, hvor "sidenavn" er "Lovinformation, AF-information og Overenskomster". De skal ikke listes i EN lang række, men fordeles på asp-siden under de respektive overskrifter.

Her er min øverste kode:

<!--#include file="dbforbindelse.asp"-->
<%
Set koopdatabase=Server.CreateObject("ADODB.Recordset")
koopdatabase.Open "SELECT * FROM indextal WHERE sidenavn='lovinformation, AF-information, overenskomster' ORDER by dato DESC", database
%>

Hvordan henter jeg de specifikke poster fra "sidenavne", hver for sig på selve siden?

Du kan se siden her:
http://www.kooperationen.dk/lovinformation.asp

Håber mit spørgsmål er til at forstå :o)

Bedste hilsener

Lars
Avatar billede hossein Nybegynder
07. oktober 2004 - 11:41 #1
hej
din udtræk:
"SELECT * FROM indextal WHERE sidenavn='lovinformation, AF-information, overenskomster'
skal være:
"SELECT * FROM indextal WHERE sidenavn IN ('lovinformation', 'AF-information', 'overenskomster')

Når du skal vise dem på din side hver for sig så skal du bruge If sætning + en løkke
<table>
<dr>
<%
if sidenavn = 'lovinformation' then
do while rs.eof
%>
<td> bla bla
next

Håber det kan hjælpe dig, prøv!
Avatar billede kivig Nybegynder
07. oktober 2004 - 11:58 #2
Hey Hossein

Tak for din hjælp.. :) Nu har jeg følgene kode:
<%
Set koopdatabase=Server.CreateObject("ADODB.Recordset")
koopdatabase.Open "SELECT * FROM indextal WHERE sidenavn IN ('lovinformation', 'AF-information', 'overenskomster')
ORDER by dato DESC", database
%>

men får følgende fejl:

Microsoft VBScript compilation error '800a0409'

Unterminated string constant

/lovinformation.asp, line 4

koopdatabase.Open "SELECT * FROM indextal WHERE sidenavn IN ('lovinformation', 'AF-information', 'overenskomster')
------------------------------------------------------------------------------------------------------------------^
hvor fejlen ligger efter den sidste parantes )
Avatar billede kivig Nybegynder
07. oktober 2004 - 12:11 #3
Her er min kode fra selve siden hvor det hentes :

<font size="2" face="Verdana, Arial, Helvetica, sans-serif">-
                Lovinformation<br>
                <span class="link">
                <%
if sidenavn = 'lovinformation' then
do while rs.eof
%>
                </span><br>
                - AF-information</font><br>
                <span class="link">
                <%
if sidenavn = 'AF-information' then
do while rs.eof
%>
                </span> <font size="2" face="Verdana, Arial, Helvetica, sans-serif"><br>
                - Overenskomster og l&oslash;nforhold<br>
                </font> <span class="link">
                <%
if sidenavn = 'overenskomster' then
do while rs.eof
%>
                </span>
                <%
koopdatabase.Close
Set koopdatabase = Nothing
%>

er dette rigtigt ??
Avatar billede eagleeye Praktikant
07. oktober 2004 - 16:58 #4
man kan sætte sidenavn ind i order by:  order by sidenavn, dato
Det før så de sidenavn kommer ud i alfabetisk orden: AF-information, lovinformation, Overenskomster

Hvis du vil havde dem i en bestemt rækkeføjge
lovinformation, AF-information, overenskomster

Kan du enten dele det op i X antal opslag i databasen:
koopdatabase.Open "SELECT * FROM indextal WHERE sidenavn='lovinformation' ORDER by dato DESC", database
koopdatabase.Open "SELECT * FROM indextal WHERE sidenavn='AF-information' ORDER by dato DESC", database
..

Eller lave et opslag med en UNION med på samme med med flere SQL sætninger:


koopdatabase.Open "(SELECT id, sidenavn, overskrift, filnavn, dato FROM indextal WHERE sidenavn='lovinformation' ORDER by dato DESC) UNION ALL (SELECT id, sidenavn, overskrift, filnavn, dato FROM indextal WHERE sidenavn='AF-information' ORDER by dato DESC) UNION ALL (SELECT id, sidenavn, overskrift, filnavn, dato FROM indextal WHERE sidenavn='overenskomster' ORDER by dato DESC)", database


Når du så løber recordset igemme kan du gøre sådan her:

tmpSidenavn=""
do while not koopdatabase.EOF
  if tmpSidenavn <> koopdatabase("sidenavn") then
    tmpSidenavn = koopdatabase("sidenavn")
    response.write " - " & tmpSidenavn & "<br>"
  end if
  response.write "<a href""" & koopdatabase("filnavn") & """>" & koopdatabase("overskrif") & "</a>" & "<br>"
  koopdatabase.Movenext
loop
Avatar billede kivig Nybegynder
08. oktober 2004 - 12:01 #5
Hej Eagle. har prøvet din UNION, og den virker.. men tror dog alligevel at dit første forslag er mere passende til siden.

koopdatabase.Open "SELECT * FROM indextal WHERE sidenavn='lovinformation' ORDER by dato DESC", database
koopdatabase.Open "SELECT * FROM indextal WHERE sidenavn='AF-information' ORDER by dato DESC", database
..osv.

Hvordan hentes de forskellige poster ind på siden separat ?
det skal helst stå under de statiske tekster :
- Lovinformation

- AF-information

- Overenskomster og lønforhold

Hvor indholdet listes under de respektive statiske overskrifter. Håber du forstår :)
Avatar billede kivig Nybegynder
08. oktober 2004 - 13:59 #6
Ved brug af UNION, ser siden sådan ud http://www.kooperationen.dk/lovinformation.asp

problemet er at posterne ikke linker.. Jeg har rodet lidt med koderne for at ændre på udseende på front end.. således :

<%tmpSidenavn=""
do while not koopdatabase.EOF
  if tmpSidenavn <> koopdatabase("sidenavn") then
    tmpSidenavn = koopdatabase("sidenavn")
    response.write " - " & tmpSidenavn & "<br>"
  end if
  %></font>
  <%response.write "<span class=link>" & "<a href""" & koopdatabase("filnavn") & """>" & koopdatabase("overskrift") & "</a>" & "</span>" & "<br>"
  koopdatabase.Movenext
loop%>
Avatar billede hossein Nybegynder
08. oktober 2004 - 14:24 #7
Hej
det mangler et = efter href -> "<a href=
Avatar billede kivig Nybegynder
13. oktober 2004 - 16:03 #8
Nu virker det med UNION.. Tak for hjælpen begge to :o) En af jer skal have point.. og det må blive eagleeye da det var det som virkede :) Skriv et svar og jeg godkender..

Tak igen begge to..

Bedste hilsener

Lars
Avatar billede eagleeye Praktikant
13. oktober 2004 - 16:16 #9
Ok her et svar :)
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