webForumDet fria alternativet

Felmeddelande när jag kollar i databas!

ASP

6 svar · 182 visningar · startad av sudden

Medlem sedan okt. 2002341 inlägg
Frågan#1

Hej!
Jag har ett script som ser ut så här:

<%public function getUsername()
  dim strSQL
  dim Db
  dim Rs
  dim strPass
  strPass = Request.Form("pass")

  ' Öppnar databasen
  set Db = createobject( "adodb.connection" )
  Db.open "driver={Microsoft Access Driver (*.mdb)};dbq=c:/inetpub/wwwroot/ZODA/database.mdb"

  strSQL = "select * from tblAnvandare where pass = strPass"
  [B]set Rs = Db.execute(strSQL)[/B]

  if Rs.eof then
    getUserName = "Vi kunde inte hitta dig i databasen...försök igen"
  else
    getUsername = Rs( "Username" )
  end if
end function
%>
Inloggad som: <%=getUsername()%>

Men jag får detta felmeddelande:

Microsoft OLE DB Provider for ODBC Drivers fel '80040e10'

[Microsoft][Drivrutin för ODBC Microsoft Access] För få parametrar angavs. 1 förväntades.

/ZODA/check.asp, rad 14

Vad är fel??

Medlem sedan maj 20023 372 inlägg
#2

Detta löser nog ditt problem. :)

http://www.webforum.nu/showthread.php?s=&threadid=58255&highlight=80040e10

Medlem sedan okt. 2002341 inlägg
#3

Nu får jag det här felmeddelandet istället:

Microsoft JET Database Engine fel '80040e10' 

Det har inte angetts något värde för en eller flera nödvändiga parametrar. 

/ZODA/check.asp, rad 13

På den här koden:

<%If ((Request.Form("username") = "") OR (Request.Form("pass") = "")) Then
Response.Redirect("main.asp")
End If

Dim strPass
strPass = Request.Form("pass")

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("database.mdb")

SQL = "SELECT * FROM tblAnvandare Where pass = strPass"
Set RS = Server.CreateObject("ADODB.Recordset")
[B]RS.Open SQL, Conn, 3, 3[/B]

If RS.Eof Then
Response.Write"Vi kunde inte hitta dig i databasen...försök igen"
Else 

Response.Write"Du är inloggad som:"%><%=RS("username")%>
<%End If
Conn.Close
Set Conn = Nothing
RS.Close
Set RS = Nothing
%>
Medlem sedan maj 20023 372 inlägg
#4

Då är jag tyvärr clueless, någon annan...?

Medlem sedan mars 20025 907 inlägg
#5

Kontrollera så att alla fältnamn och tabellnamn stämmer.

Medlem sedan mars 20025 907 inlägg
#6
SQL = "SELECT * FROM tblAnvandare Where pass = strPass"
ser lite konstig ut, prova
SQL = "SELECT * FROM tblAnvandare Where pass = '"&strPass&"'" 
istället
Medlem sedan mars 20015 287 inlägg
#7

SQL = "SELECT * FROM tblAnvandare Where pass =" & strPass

eller

SQL = "SELECT * FROM tblAnvandare Where pass = '"& strPass &"'"

258 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)