02. august 2004 - 11:51Der er
14 kommentarer og 2 løsninger
Hente et id fra et link og vise tilhørende poster fra db??
Hej
Jeg har en database med varer. Når man klikker på en vare i en vareoversigt skal man sendes til en ny side hvor oplysninger om den valgte varer vises.
Min vareoversigt ser ud på følgende måde: ---------- Response.Write "<td align='center' valign='top'><a href='vis_varer.asp?intVareId=" & rs("vareid") & "'><img src=""" & rs("foto1") & """ border='0'><br>" Response.Write rs("titel") & "<br>" Response.Write "Kr. " & rs("pris") & ",-</a></td>" column = column + 1 'lægger en til tælleren
RS.MoveNext Loop ----------
Hvad gør jeg på næste side for at vise netop den valgte varer? Oplysningerne skal hentes fra databasen ud fra det vareid som står i linket (når musen føres over).
Jeg har forsøgt med følgende, men det giver bare en blank side. ---------- vareID = Request.Querystring("intVareID")
' SQL forespørgsel strSQL = "Select * From vare Where vareid =" & vareID
' Udfør strSQL (rs kommer til at indeholde dataen) Set rs = Conn.Execute(strSQL)
Response.Write rs("titel") -----------
Hvad gør jeg forkert? Håber der er nogen der kan hjælpe....
Det er ikke meningen at jeg skal skrive i min database. Jeg skal hente noget fra databasen.
Jeg mener at rs (recordset) er det som indeholder de informationer jeg henter fra databasen.
Men måske tager jeg fejl. Hvis det er tilfældet, hvordan skal min kode så se ud, hvis ikke jeg skal skrive i min database, men hente noget i stedet for???
Problemet er ganske enkelt: vareID = Request.Querystring("intVareID") ændres til vareID = Request.Querystring("intVareId") da du jo har kaldt den intVareId og ikke intVareID i din querystring
så vil jeg også tro som nidyahou gør at det er en variabel fejl. er du sikker på at variabel navnene stemmer overens på vareoversigt.asp og den side du vil ha oplysninger fra ?
og hvis jeg lige skal skrive mit eksempel korrekt:
' connection til db SQL = "SELECT * FROM vare WHERE vareid = " & Request("intvareID") Conn.Execute (SQL) Set rs = conn.Execute(SQL)
du er sikker på dette ikke virker ?
hvad er typen på din kolonne der hedder vareid ? går udfra det er autonummerering, men hvis det er tekst skal du huske '' omkring. Dog ville jeg mene du ville få fejlmeddeling om at typerne ikke stemmer overens, så jeg tror mere på det med variablerne
Id'et kommer ikke til at stå i adresselinien - men det må jo komme med over alligevel, for ellers kan den rigtige varer jo ikke blive valgt ud...jeg ved det ikke helt.
prøv at gå ind på www.ferslev.com/datronic/designny, klik på netbutik, klik på bærbare og så klik på en af varerne, så kan du se hvad jeg mener med at id'et ikke står i adresselinien.
Grunden til at du ikke kan se IDet i adresselinjen er fordi du kalder din nye side i en iframe. Du kan jo også se at den linker godt nok ved at køre musen over linket og på destinationen på proceslinjen.
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.