Avatar billede teknikeren Nybegynder
02. juni 2002 - 08:38 Der er 13 kommentarer og
1 løsning

Slut på sætning

Hej igen...
Det handler IGEN om det der brugersystem...
Når jeg logger ind med en nyoprettet bruger skriver den således:

Der opstod en Microsoft VBScript-kompileringsfejl fejl '800a0401'

Slut på sætning var ventet

Her er min kode:

<%
dim cn, strcn
Set cn = Server.CreateObject("ADODB.Connection")
strcn = "Provider = Microsoft.Jet.OLEDB.4.0;"
strcn = "data source = /WINDOWS/Skrivebord/hp/brugere.mdb;"
cn.ConnectionString = strcn
cn.Open
dim SQL
SQL = "Select * FROM brugere WHERE [brugernavn] = '" & Request.Form("BrugerNavn") & "' AND [password] = '" & Request.Form("Password")"'"
Set cn = cn.Execute(SQL)


If rs.EOF Then
Response.Write "Forkert Password / Brugernavn."
%>
<BR>
<A href = "default.asp">Prøv Igen</A>
<%
Else
%>
SIDEN ER HER
<%
End if
%>
Hvad kan der være galt?
Avatar billede bullefardk Nybegynder
02. juni 2002 - 09:10 #1
Er databasen i samme mappe som de andre filer?
Avatar billede bullefardk Nybegynder
02. juni 2002 - 09:10 #2
Alle andre?
Avatar billede bullefardk Nybegynder
02. juni 2002 - 09:11 #3
For så skal den se såden ud.

<%
dim cn, strcn
Set cn = Server.CreateObject("ADODB.Connection")
strcn = "Provider = Microsoft.Jet.OLEDB.4.0;"
strcn = "data source = brugere.mdb;"
cn.ConnectionString = strcn
cn.Open
dim SQL
SQL = "Select * FROM brugere WHERE [brugernavn] = '" & Request.Form("BrugerNavn") & "' AND [password] = '" & Request.Form("Password")"'"
Set cn = cn.Execute(SQL)


If rs.EOF Then
Response.Write "Forkert Password / Brugernavn."
%>
<BR>
<A href = "default.asp">Prøv Igen</A>
<%
Else
%>
SIDEN ER HER
<%
End if
%>
Avatar billede fet321 Nybegynder
02. juni 2002 - 09:13 #4
Ret linien
strcn = "data source = /WINDOWS/Skrivebord/hp/brugere.mdb;"

til
strcn = strcn & "data source = /WINDOWS/Skrivebord/hp/brugere.mdb;"

...eller får du ikke det hele med til db forbindelsen
Avatar billede bullefardk Nybegynder
02. juni 2002 - 09:15 #5
Kan du ikke se at den vil gå ind i /WINDOWS/Skrivebord/hp/ for at lede efter databasen når siden er på nettet.. Tror ikke at der er særlig mange der har en mappe på skrivebordet der hedder hp og har en database fil.
Avatar billede bullefardk Nybegynder
02. juni 2002 - 09:16 #6
Hmm
Avatar billede fet321 Nybegynder
02. juni 2002 - 09:21 #7
bullefardk >> Nu er "data source = /WINDOWS/Skrivebord/hp/brugere.mdb;" jo stien til databasen på web-serverne og da ASP er serverside, skal brugerne af siden ikke have nogen database liggende vel ;-)
Avatar billede teknikeren Nybegynder
02. juni 2002 - 09:34 #8
Den skriver dette:

Der opstod en Microsoft VBScript-kompileringsfejl fejl '800a0401'

Slut på sætning var ventet

/hp/bruger.asp, linje 9

SQL = "Select * FROM brugere WHERE [brugernavn] = '" & Request.Form("BrugerNavn") & "' AND [password] = '" & Request.Form("Password")"'"
-------------------------------------------------------------------------------------------------------------------------------------^
Avatar billede fet321 Nybegynder
02. juni 2002 - 09:42 #9
Ret linien
SQL = "Select * FROM brugere WHERE [brugernavn] = '" & Request.Form("BrugerNavn") & "' AND [password] = '" & Request.Form("Password")"'"

til
SQL = "Select * FROM brugere WHERE [brugernavn] = '" & Request.Form("BrugerNavn") & "' AND [password] = '" & Request.Form("Password") & "'"

du manglede et &-tegn til sidst
Avatar billede teknikeren Nybegynder
02. juni 2002 - 10:02 #10
Hvordan er det man laver et rs object?
Avatar billede fet321 Nybegynder
02. juni 2002 - 10:05 #11
Det gør du sådan

Set rs = Server.CreateObject("ADODB.Recordset")
Avatar billede teknikeren Nybegynder
02. juni 2002 - 10:27 #12
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open
Nu skriver den "Programmet har anmodet om en handling på et objekt, som har en henvisning til et lukket eller ugyldigt forbindelsesobjekt."
Avatar billede fet321 Nybegynder
02. juni 2002 - 10:39 #13
Du behøver ikke åbne et recordset med
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open

grunden til at dit recordset ikke åbnes er fejli denne linie

Set cn = cn.Execute(SQL)

den skal være

Set rs = cn.Execute(SQL)
Avatar billede fet321 Nybegynder
02. juni 2002 - 10:40 #14
takker for points
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