10. december 2006 - 06:01Der er
5 kommentarer og 1 løsning
Hente udvalgte data ved at opsætte kriterier
Jeg har et script, hvor jeg gerne vil hente overskrift'er på indlæg som de forskellige bruger har skrevet. Som mit script er nu, så henter den alle indlæg ind på profil.asp uanset user_id. Jeg vil kun have de indlæg ind der tilknyttes den enkelte bruger. Fx hvis der er en bruger, der har user_id 11 skal der kun vises indlæg fra user_id 11 osv. Er der en, der kan hjælpe mig med at få det til at virke :o)
DB'en Users: user_id user_name user_email user_password user_created Dagbog: Id bruger_id dato tekst overskrift ViewCounter
strSQL = "Select * From users Order by user_id ASC" Set rs = Conn.Execute(strSQL)
Do
Response.Write "<center><table BORDER=0 CELLSPACING=0 COLS=1 WIDTH='200'>" Response.Write "<tr>" Response.Write "<a href=""profil.asp?user_id="&rs("user_id")&""">"& rs("user_name") & "</a>" Response.Write "</TD>" Response.Write "</TR>" Response.Write "</TABLE>" rs.MoveNext Loop While Not rs.EOF ---------------------- profil.asp <% ' Sikrer mod SQL injection If isNumeric(Request.QueryString("bruger_id")) Then
' Databaseforbindelse - husk at angive sti til din database Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("dagbog.mdb") Conn.Open DSN
' SQL forespørgsel
strSQL = "Select * from dagbog WHERE bruger_id = bruger_id" ' Udfør forespørgsel (rs indeholder nu resultatet) Set rs = Conn.Execute(strSQL) Do While Not rs.EOF
profil.asp <% ' Sikrer mod SQL injection If isNumeric(Request.QueryString("user_id")) Then
' Databaseforbindelse - husk at angive sti til din database Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("dagbog.mdb") Conn.Open DSN
' SQL forespørgsel
strSQL = "Select * from dagbog WHERE user_id = "& request("user_id") ' Udfør forespørgsel (rs indeholder nu resultatet) Set rs = Conn.Execute(strSQL) Do While Not rs.EOF
profil.asp <% ' Sikrer mod SQL injection If isNumeric(Request.QueryString("user_id")) Then
' Databaseforbindelse - husk at angive sti til din database Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("dagbog.mdb") Conn.Open DSN
' SQL forespørgsel
strSQL = "Select * from dagbog WHERE bruger_id = "& request("user_id") ' Udfør forespørgsel (rs indeholder nu resultatet) Set rs = Conn.Execute(strSQL) Do While Not rs.EOF
' Sikrer mod SQL injection If isNumeric(Request.QueryString("user_id")) Then
' Databaseforbindelse - husk at angive sti til din database Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("dagbog.mdb") Conn.Open DSN
' SQL forespørgsel
strSQL = "Select * from dagbog WHERE bruger_id = "& request("user_id") ' Udfør forespørgsel (rs indeholder nu resultatet) Set rs = Conn.Execute(strSQL) Do While Not rs.EOF
' Lukker forbindelse Conn.Close Set Conn = Nothing end if
' sæt end if tilsidst
Synes godt om
Slettet bruger
12. december 2006 - 16:29#6
nu får jeg denne fejl Microsoft OLE DB Provider for ODBC Drivers error '80040e07'
[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.
profil.asp, line 15
line 15 Set rs = Conn.Execute(strSQL)
Synes godt om
Ny brugerNybegynder
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.