Avatar billede mettecarsten Nybegynder
24. april 2004 - 23:03 Der er 6 kommentarer og
1 løsning

Logonproblemer ved skift fra access til MYSQL

Hej eksperter

Jeg har lige skiftet fra en access-database til en nyoprettet MYSQL-database. Det er gået fint, men jeg har dog problemer med at logge ind på den nye side, som kører MYSQL. Jeg har følgende kode:

<%

Bnavn = Request.form ("Navn")
Pass = Request.form ("pass")

StrQ = "Select Navn, password, Bnavn, type from data"
Objrs.open StrQ
    While not objrs.eof
    If Bnavn = objrs("Bnavn") Then
        if Pass = objrs("password") Then
        Session("navn") = objrs("Bnavn")
        if objrs("type") = "A" Then
        Response.Redirect "bover.asp"
        Else
        Response.Redirect "hover.asp"
        End if
        End if
    End if


Objrs.movenext
Wend
Session("logon") = 1
Response.Redirect "login.asp"
%>

Hvad skal ændres, så den kan virke? Reelt skal koden bare sige, at hvis brugernavn og password passer til databasen, så send videre til hover.asp, ellers returnere til login.asp.

På forhånd tak.
Avatar billede eagleeye Praktikant
24. april 2004 - 23:21 #1
Typisk vil man lave login sådan her, ved at lave en SELECT med en WHERE på, er recordsetet ikke tomt findes brugeren, er det tomt findes brugere ikke sådan her:


<%

Bnavn = Request.form ("Navn")
Pass = Request.form ("pass")

StrQ = "Select Navn, password, Bnavn, type from data where Bnavn = '" & Replace(Bnavn,"'","''") & " AND password = '" & Replace(pass,"'","''") & "'"
Objrs.open StrQ
If not Objrs.EOF Then
  Session("navn") = objrs("Bnavn")
  if objrs("type") = "A" Then
    Response.Redirect "bover.asp"
  Else
    Response.Redirect "hover.asp"
  End if
End if
Session("logon") = 1
Response.Redirect "login.asp"
%>
Avatar billede mettecarsten Nybegynder
24. april 2004 - 23:31 #2
Har lige prøvet - kommer nu med denne fejl:

Technical Information (for support personnel)

Error Type:
Sun ONE ASP VBScript runtime (0x800A01A8)
Object required: 'Objrs'
/vallog.asp, line 12
Avatar billede eagleeye Praktikant
25. april 2004 - 00:03 #3
Har du en linje i koden som denne?

Set Objrs=Server.CreateObject("ADODB.Recordset")
Avatar billede eagleeye Praktikant
25. april 2004 - 00:03 #4
Samt en connection til din database?
Avatar billede eagleeye Praktikant
25. april 2004 - 00:04 #5
sådan det hele bliver i stil med dette:


<%
Set Objrs=Server.CreateObject("ADODB.Recordset")
Set conn=Server.CreateObject("ADODB.Connection")
Conn.Open "din connection string"


Bnavn = Request.form ("Navn")
Pass = Request.form ("pass")

StrQ = "Select Navn, password, Bnavn, type from data where Bnavn = '" & Replace(Bnavn,"'","''") & " AND password = '" & Replace(pass,"'","''") & "'"

set Objrs = Conn.Execute(StrQ)
If not Objrs.EOF Then
  Session("navn") = objrs("Bnavn")
  if objrs("type") = "A" Then
    Response.Redirect "bover.asp"
  Else
    Response.Redirect "hover.asp"
  End if
End if
Session("logon") = 1
Response.Redirect "login.asp"
%>
Avatar billede mettecarsten Nybegynder
25. april 2004 - 09:29 #6
Jeg har en fil, som finder til databasen og includeres på alle sider. Jeg har dog i stedet prøvet at skrive det hele på side. Koden ser herefter således ud:

<%

Set Objrs=Server.CreateObject("ADODB.Recordset")
Set conn=Server.CreateObject("ADODB.Connection")

Conn.Open "driver={mysql};server=localhost;Database=mitdomæne;uid=mitdomæne;pwd=password"

Bnavn = Request.form ("Navn")
Pass = Request.form ("pass")

StrQ = "Select Navn, password, Bnavn, type from data where Bnavn = '" & Replace(Bnavn,"'","''") & " AND password = '" & Replace(pass,"'","''") & "'"
Objrs.open StrQ
If not Objrs.EOF Then
Session("navn") = objrs("Bnavn")
if objrs("type") = "A" Then
Response.Redirect "bover.asp"
Else
Response.Redirect "hover.asp"
End if
End if

Session("logon") = 1
Response.Redirect "login.asp"
%>

Herefter kommer der følgende fejl:

Technical Information (for support personnel)

Error Type:
ADODB.Recordset.1 (0x800A0E7D)
Invalid connection.
/vallog.asp, line 14


Browser Type:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)

Page:
POST 28 bytes to /vallog.asp

POST Data:
Navn=test&pass=test&B1=Login

Linie 14 er: Objrs.open StrQ

Jeg kan umiddelbart ikke se, hvor det går galt?
Avatar billede mettecarsten Nybegynder
04. maj 2004 - 21:15 #7
Lukker spg. :-)
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