13. april 2006 - 12:45
Der er
17 kommentarer og 1 løsning
Fejl i rs fra database
Her er scriptet: <% Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("db.mdb") %> <% strSQL = "Select* From Tekst Where ID=Forside" Set rs = Conn.Execute(strSQL)%> <% Response.Write rs("HTML") %> <% Conn.Close %> Database info: Access 2000 DB 1 Tabel -> Tekst Rækker-> ID ( Tekst ) HTML ( Notat ) Her er hvad den skriver af fejl: Microsoft OLE DB Provider for ODBC Drivers error '80040e10' [Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1. /forum/default.asp, line 5
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
13. april 2006 - 12:51
#1
mellemrum i "select*"
13. april 2006 - 12:53
#2
Løste ikke noget altså: <% strSQL = "Select * From Tekst Where ID=Forside"
13. april 2006 - 12:56
#3
Du har glemt apostroffer rundt om Forside strSQL = "Select * From Tekst Where ID='Forside'"
13. april 2006 - 13:09
#4
Man skal vist ikke kode så tidlig om morgenen, der er point klar til dig.
13. april 2006 - 14:20
#5
Lidt hjælp IGEN :) <% strSQL = "Select * From Butikkerne Where ID=" & Request("Mode") Set rs = Conn.Execute(strSQL)%><% Response.Write rs("HTML") %><% Conn.Close %> Får dennne fejl: Microsoft VBScript compilation error '800a0409' Unterminated string constant /Documents/Butikkerne/Butikkerne.asp, line 52 strSQL = "Select * From Butikkerne Where ID=" & Request("Mode")" ----------------------------------------------------------------^
14. april 2006 - 08:15
#6
den siger jo hvad der er galt "unterminatet string constant" betyder du har en streng som ikke er afsluttet - og så peger den hvor :o) Det skyldes dine gåseøjne til allersidst strSQL = "Select * From Butikkerne Where ID=" & Request("Mode") frem for strSQL = "Select * From Butikkerne Where ID=" & Request("Mode")"
14. april 2006 - 08:17
#7
men hvis rewuest("mode") er en streng ligesom du først skrev "forside" så skal der plinger omkring også strSQL = "Select * From Butikkerne Where ID='" & Request("Mode") &"'"
14. april 2006 - 11:10
#8
Tusind tak for hjælpen. Ved du om dette kan lade sig gøre: Link: Butikkerne.asp?Tabel=Butikkerne?Mode=Middelfart Koden i ASP'en: <% strSQL = "Select * From '" & Request("Tabel") &"' Where ID='" & Request("Mode") &"'" Set rs = Conn.Execute(strSQL)%><% Response.Write rs("HTML") %><% Conn.Close %>
14. april 2006 - 11:19
#9
ja det kan det godt men der er flere ting i det For det første vil jeg foreslå dig altid at bruge den direkte request Dvs i stedet for Request("Tabel") så her Request.querystring("Tabel") Hvis du benytter Request alene så søger den alle typer igennem, dvs den søger sessions og forms og cookies osv igennem (kan ikke huske rækkefølgen) Det er dels spild af resourcer, men du risikerer også at få problemer hvis du fx har en session som hedder "Tabel"...tager den så din querystring eller din session... For det andet så åbner du stort op for sql injektion på den måde Jeg ved ikke om du kender begrebet? Men problemet er jo at folk kan skrive hvad de ønsker i browseren. Fx "drop table"...og så slettes hele din tabel Så hvor det er muligt vil jeg foreslå dig ikke at binde en database op på input fra querystrings
14. april 2006 - 11:22
#10
Afh af hvad du bruger siden til bør du overveje beskytte den imod sql injektion. Søg evt på google ,der findes mange sider omkring emnet :O) Hvis det bare er en for sjov privat side. og du har backup af databasen Så gør det måske så meget, blot du er klar over problemstillingen :o) og så ved jeg ikk om du ønskede et svar...men her er da et :o)
14. april 2006 - 19:07
#11
Ja, det var faktisk et rigtig godt svar, men ved du hvorfor den så melder fejl i koden ? Link: Butikkerne.asp?Tabel=Butikkerne?Mode=Test Koden: <% Case "Test" %> <div align="center"> <table border="0" width="900" id="Top" cellspacing="0" cellpadding="0"> <tr><td width="100%" bgcolor="#FFFFFF" valign="top"><!--#include virtual="/Includes/Top.asp"--></td></tr> <tr><td height="5"></td></tr> <tr><td bgcolor="#FFFFFF" height="500"><table border="0" width="100%" id="Indhold" cellspacing="0" cellpadding="0" height="100%"> <tr><td valign="top"><table border="0" width="100%" id="table16" cellspacing="0" cellpadding="0" height="100%"> <tr><td> <table border="0" width="100%" id="table18" cellspacing="0" cellpadding="0" height="100%"> <tr><td><table border="0" width="100%" id="table19" cellspacing="3" cellpadding="3" height="100%"> <tr><td valign="top"> <% strSQL = "Select * From '" & Request.querystring("Tabel") &"' Where ID='" & Request("Mode") &"'" Set rs = Conn.Execute(strSQL)%><% Response.Write rs("HTML") %><% Conn.Close %> </td></tr></table></td></tr></table></td> <td width="5" bgcolor="#DDDDDD"></td> <td width="225" bgcolor="#DDDDDD"><p align="center"><!--#include virtual="/Includes/QuickTilbud.asp"--></td></tr> </table></td></tr></table></td></tr> <tr><td height="5"></td></tr> <tr><td bgcolor="#FFFFFF"><!--#include virtual="/Includes/Bottom.asp"--></td></tr> </table></div></body></html>
14. april 2006 - 19:23
#12
der skal selvfølgelig ikke være ' omkring tabel navnet strSQL = "Select * From " & Request.querystring("Tabel") &" Where ID='" & Request("Mode") &"'"
14. april 2006 - 19:38
#13
Still no luck, kan du se hvad der er galt ? <% Dim mode mode = Request.QueryString("mode") %> <% Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("/fpdb/DB.mdb") %> <html> <head> <meta http-equiv="Content-Language" content="da"> <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> <title>.:: TKFyn.dk ::.</title> <script type="text/javascript" language="JavaScript1.2" src="/Menu/stm31.js"></script> </head> <LINK HREF="/Includes/CSS.css" REL="stylesheet" type="text/css"> <body bgcolor="#DDDDDD"> <% Select Case mode Case "" %> <div align="center"> <table border="0" width="900" id="Top" cellspacing="0" cellpadding="0"> <tr><td width="100%" bgcolor="#FFFFFF" valign="top"><!--#include virtual="/Includes/Top.asp"--></td></tr> <tr><td height="5"></td></tr> <tr><td bgcolor="#FFFFFF" height="500"><table border="0" width="100%" id="Indhold" cellspacing="0" cellpadding="0" height="100%"> <tr><td valign="top"><table border="0" width="100%" id="table16" cellspacing="0" cellpadding="0" height="100%"> <tr><td> <table border="0" width="100%" id="table18" cellspacing="0" cellpadding="0" height="100%"> <tr><td><table border="0" width="100%" id="table19" cellspacing="3" cellpadding="3" height="100%"> <tr><td valign="top"> <% strSQL = "Select * From " & Request.querystring("Tabel") &" Where ID='" & Request("Mode") &"'" Set rs = Conn.Execute(strSQL)%><% Response.Write rs("HTML") %><% Conn.Close %> </td></tr></table></td></tr></table></td> <td width="5" bgcolor="#DDDDDD"></td> <td width="225" bgcolor="#DDDDDD"><p align="center"><!--#include virtual="/Includes/QuickTilbud.asp"--></td></tr> </table></td></tr></table></td></tr> <tr><td height="5"></td></tr> <tr><td bgcolor="#FFFFFF"><!--#include virtual="/Includes/Bottom.asp"--></td></tr> </table></div></body></html> <% Case "Test" %> <div align="center"> <table border="0" width="900" id="Top" cellspacing="0" cellpadding="0"> <tr><td width="100%" bgcolor="#FFFFFF" valign="top"><!--#include virtual="/Includes/Top.asp"--></td></tr> <tr><td height="5"></td></tr> <tr><td bgcolor="#FFFFFF" height="500"><table border="0" width="100%" id="Indhold" cellspacing="0" cellpadding="0" height="100%"> <tr><td valign="top"><table border="0" width="100%" id="table16" cellspacing="0" cellpadding="0" height="100%"> <tr><td> <table border="0" width="100%" id="table18" cellspacing="0" cellpadding="0" height="100%"> <tr><td><table border="0" width="100%" id="table19" cellspacing="3" cellpadding="3" height="100%"> <tr><td valign="top"> <% strSQL = "Select * From " & Request.querystring("Tabel") &" Where ID='" & Request("Mode") &"'" Set rs = Conn.Execute(strSQL)%><% Response.Write rs("HTML") %><% Conn.Close %> </td></tr></table></td></tr></table></td> <td width="5" bgcolor="#DDDDDD"></td> <td width="225" bgcolor="#DDDDDD"><p align="center"><!--#include virtual="/Includes/QuickTilbud.asp"--></td></tr> </table></td></tr></table></td></tr> <tr><td height="5"></td></tr> <tr><td bgcolor="#FFFFFF"><!--#include virtual="/Includes/Bottom.asp"--></td></tr> </table></div></body></html> <%End Select%>
14. april 2006 - 19:41
#14
hvad giver den af fejl
14. april 2006 - 19:44
#15
Den kommer bare blank frem. Tror det er pga. af noget mode, tror ikke informationen fra linket Test.asp?Tabel=Butikkerne?Mode=Test kommer med.
14. april 2006 - 19:49
#16
hov hov.... du har jo også 2 spørgsmålstegn Det må du ikke have. Der kan altid kun være eet Dernæst adskiller man med & Test.asp?Tabel=Butikkerne&Mode=Test
14. april 2006 - 19:53
#17
YYYYYYYYESSS SIR.... 100% Tak
14. april 2006 - 20:00
#18
det var så lidt da :o)
Kurser inden for grundlæggende programmering