Avatar billede jones279 Nybegynder
26. april 2004 - 16:29 Der er 16 kommentarer og
1 løsning

Vise indhold kun fra tabeller indeholdende specifikt ID

Hejsa! Jeg er rimelig newb, men sidder og leger med lidt asp!... Skal lave det sådan, at jeg har 6 punkter på en side... De 6 punkter har hvert et link som linker til samme side, fx arrangement.asp derefter blir der tilføjet et type ID sådan så arrangement.asp kun viser de sider som har fx type=1 dvs sådan så links'ne kan se sådan her ud: arrangement.asp?type=1 viser alle dem som har 1 i type... osv med 2 osv...

tabellen der indeholder arrangementerne hedder arrangementer og det som arrangement.asp skal vise, skal være ens på alle siderne MEN der skal være en overskrift som bliver hentet fra en relations database (som hænger sammen med type) som hedder typer og indeholder ID (som er det samme som type i arrangementer) og så TYPE (som indeholder overskriften på arrangementet!)....

Jeg ved ikke om det er nok info ...!?!

Men håber i kan hjælpe! på forhånd tark!
Avatar billede bogologo Nybegynder
26. april 2004 - 16:39 #1
hvis jeg har forstået det rigtigt så skal du bare skrive noget i stil med: arangement.asp?type=1 på linket.
Avatar billede jones279 Nybegynder
26. april 2004 - 17:33 #2
Og så gør den det helt automatisk?
Avatar billede jones279 Nybegynder
26. april 2004 - 18:30 #3
Det virker ikke :(
Avatar billede websam Nybegynder
26. april 2004 - 19:55 #4
På den side med links laver du et db kald til at generere dine links :

Sql = "Select * From Dintabel Order By Id Desc"
Set Rs = Conn.Execute(Sql)

Do While Not Rs.EOF
  Response.Write("<a href=""arrangement.asp?Type="&Rs("Id")&"""></a>")
Rs.MoveNext
Loop

På den måde lister du dine links på side 1 :o)

På Side 2 laver du så følgende :

Sql = "Select * From Dintabel Where Id = "&Request.QueryString("Type")&""
Set Rs = Conn.Execute(Sql)

Response.Write Rs("Id")&"<br>"
Response.Write Rs("Overskrift")&"<br>"
Response.Write Rs("Indhold")

Eller hvad du nu har kaldt dine felter :o)

/Websam
Avatar billede jones279 Nybegynder
27. april 2004 - 09:38 #5
Kan du lave det sådan, så jeg bare kan skrive al min alm html på side 2 og så bare sætte tegnene ind sådan her: <%=overskrift%>

Jeg forstår nemlig ikke helt hvad du skriver :)
Avatar billede jones279 Nybegynder
27. april 2004 - 11:15 #6
Okay, nu har jeg selv fundet ud af, at hive mit ID med over på side 2 som hedder turtype - dvs nu skal jeg bare have ordnet side 2, som så kun skal vise fx sider som har turtype=2
Avatar billede jones279 Nybegynder
27. april 2004 - 15:16 #7
Jeg tror jeg fatter hvad du mener websam... Men jeg skal lige have lavet min SQL streng rigtig!... Tjek her:

SQL = "SELECT * FROM arrangementer WHERE stemmer >= 30 OR altidaktivt=true ORDER BY dato OR Id = "&Request.QueryString("turtype")&""

Det virker nemlig ikke pt...
Avatar billede jones279 Nybegynder
27. april 2004 - 15:17 #8
¨Nu har jeg lavet den lidt om:

SQL = "SELECT * FROM arrangementer WHERE stemmer >= 30 OR altidaktivt=true ORDER BY dato OR turtype = "&Request.QueryString("turtype")&""

og får fejl i den...
Avatar billede websam Nybegynder
27. april 2004 - 19:44 #9
Hvad går fejlen på ? Smid den op så jeg kan se fejlen :o)

/Websam
Avatar billede websam Nybegynder
27. april 2004 - 19:45 #10
Prøv lige med denne :

SQL = "SELECT * FROM arrangementer WHERE stemmer >= 30 OR altidaktivt=true OR turtype = "&Request.QueryString("turtype")&" ORDER BY dato"

Når du laver Order By skal det altid komme til sidst i din Sql :o)

/Websam
Avatar billede jones279 Nybegynder
28. april 2004 - 14:52 #11
Virker stadig ikke... Får den her fejl:

Microsoft JET Database Engine error '80040e10'
No value given for one or more required parameters.

/jonas/musik2/arrangement.asp, line 27


linie 27 =

Set rs = conn.Execute(SQL)
Avatar billede websam Nybegynder
28. april 2004 - 17:26 #12
Ok det er fordi der ikke er nogen værdi i en af følgende :

stemmer >= 30
altidaktivt = true
turtype = "&Request.QueryString("turtype")&"

Prøv en gang at udskrive din Sql på følgende Måde og fortæl mig hvad der står på siden :

SQL = "SELECT * FROM arrangementer WHERE stemmer >= 30 OR altidaktivt=true OR turtype = "&Request.QueryString("turtype")&" ORDER BY dato"
Response.Write Sql
Response.End

/Websam
Avatar billede jones279 Nybegynder
29. april 2004 - 14:32 #13
Hvis jeg fjerner OR turtype = "&Request.QueryString("turtype")&" helt så virker den, så fejlen må ligge der... Når jeg sætter det ind du har skrevet, laver den følgende:

SELECT * FROM arrangementer WHERE stemmer >= 30 OR altidaktivt=true OR turtype = 1 ORDER BY dato

Hvilket også er rigtigt nok! (den skriver rigtigt id ved alle...)...

Men så må fejlen jo ligge et andet sted, eller hvad!?!?
Avatar billede websam Nybegynder
29. april 2004 - 16:56 #14
Det lyder underligt så prøv lige engang at sende mig din db samt de filer det handler om så skal jeg lige få det til at virke :o) send det til martin@newage.dk
Avatar billede jones279 Nybegynder
29. april 2004 - 21:21 #15
Sendt!
Avatar billede websam Nybegynder
30. april 2004 - 00:38 #16
Så fik jeg lige kigget på det og du skal ændre denne sætning :

SQL = "SELECT * FROM arrangementer WHERE stemmer >= 30 OR altidaktivt=true OR turtype = "&Request.QueryString("turtype")&" ORDER BY dato"

Til dette :

SQL = "SELECT * FROM arrangementer WHERE stemmer >= 30 And altidaktivt = true And type = "&Request.QueryString("turtype")&" ORDER BY dato"

Så virker det hele fint her på min maskine. Det jeg har ændret er at skifte OR ud med AND på den måde finder den kun de records hvor :

stemmer >= 30 og
altidaktivt = true og
type = "&Request.QueryString("turtype")&"

Og så havde du skrevet "turtype" istedet for "type" i din sql og derfor går det galt for dig når du ikke skriver navnet på de rigtige felter i databasen.

Håber det hjælper dig på vej i den rigtige retning :o)

/Websam
Avatar billede websam Nybegynder
03. maj 2004 - 01:04 #17
Jeg ved ikke hvad der sker på E men fik du det til at virke ?

/Websam
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