Avatar billede sirerugor Nybegynder
11. januar 2003 - 13:36 Der er 29 kommentarer og
1 løsning

Database login.... HEEELP!

Hej alle....
Jeg er i gang emd et program i Visual Basic 6.0, hvor jeg et sted skal logge på... Problemet er at VB ikke tjekker hvad der står i "txtUser.text", men bare udfører koden alligevel.

Her er koden får OK knappen:
==============================================
Private Sub cmdOK_Click()
If frmLogin.Visible = True Then
  dbLogin.Recordset.MoveFirst
  Do While dbLogin.Recordset.EOF = False
  If dbLogin.Recordset("Username") = txtUser.Text Then
    frmLogin.Hide
    frmSplash.Hide
    mdiMain.Show
    Exit Sub
  End If
  dbLogin.Recordset.MoveNext
  Loop
End If
End Sub
==============================================

Håber der er nogen der kan/vil hjælpe med dette... Det er nemlig et meget vigtigt led i programmet, som også er en projektopgave.....

-MSK
Avatar billede heko124 Nybegynder
11. januar 2003 - 13:44 #1
hvor mange records er der i dit recordset ? - Har du prøvet at single steppe igennem koden ?

henrik :-)
Avatar billede sirerugor Nybegynder
11. januar 2003 - 13:45 #2
Der er 40 records.... Ja vi har steppet....  Men det virker ikke.... Har du nogle ideer ?
Avatar billede heko124 Nybegynder
11. januar 2003 - 13:47 #3
Prøv at starte med at skrive "msgbox txtUser.Text" før "Do While dbLogin.Recordset.EOF = False" og se hvad der kommer ud....

henrik :-)
Avatar billede terry Ekspert
11. januar 2003 - 13:47 #4
dont think you need to use Recordset

Do until dbLogin.EOF
.
.


DEBUG the code and see what is in both variables! If they are BOTH empty then it will just execute the code
Avatar billede sirerugor Nybegynder
11. januar 2003 - 13:48 #5
Den skriver det ud som txtUser.Text er lig med....
Avatar billede heko124 Nybegynder
11. januar 2003 - 13:49 #6
Det jeg ville vide var om der er noget text i din textbox  henrik
Avatar billede terry Ekspert
11. januar 2003 - 13:49 #7
can we see some more code?

variable declarations etc.
Avatar billede sirerugor Nybegynder
11. januar 2003 - 13:50 #8
Terry <- That didn't work!
Avatar billede heko124 Nybegynder
11. januar 2003 - 13:50 #9
Er det én user du prøver at validere ?

henrik :-)
Avatar billede sirerugor Nybegynder
11. januar 2003 - 13:51 #10
Henrik -> Ja det den skriver noget ud :)
Avatar billede sirerugor Nybegynder
11. januar 2003 - 13:53 #11
.. Hele problemet liger i.. At databasen er "ligeglad" med hvad der står i txtUser.Text & txtPass.Text... Den logger bare en på lige meget hvad.. :(
Avatar billede sirerugor Nybegynder
11. januar 2003 - 13:54 #12
Henrik -- Har du ikek MSN, ICQ, AIM eller IRC ?.... Så kunne vi bedre snakke om det.. ?
Avatar billede terry Ekspert
11. januar 2003 - 13:56 #13
The code you are showing us here has NOTHING to do with logging in to the dB! It only lets your code continue  If dbLogin.Recordset("Username") = txtUser.Text !!!!!
Avatar billede heko124 Nybegynder
11. januar 2003 - 13:56 #14
Hvis det kun er en bruger du skal validerer ville jeg nok søge specifikt på denne i din tabel fx str_sql = "select * from usertabel where username = " & textbox

Dette sikre at du ikke skal loope gennemdit recordset...

Hvis du er eof er der ingen user med det login ellers tjek pass word...

jeg ved ikke om det laver for meget om på din kode ??
Avatar billede sirerugor Nybegynder
11. januar 2003 - 13:57 #15
Terry - Hmm Yeah that was the idea...
Avatar billede terry Ekspert
11. januar 2003 - 13:57 #16
LETS SEE SOME MORE CODE!!!!
Avatar billede heko124 Nybegynder
11. januar 2003 - 13:57 #17
msn heko124@hotmail.com


henrik :-)
Avatar billede sirerugor Nybegynder
11. januar 2003 - 13:58 #18
Henrik -- Det prøver jeg lige... takker.. :)
Avatar billede heko124 Nybegynder
11. januar 2003 - 13:58 #19
men jeg tror det er bedre vi bliver her Terry vil gerne deltage og det helt fint.. det er bedre med flere ideer

henrik :-)
Avatar billede sirerugor Nybegynder
11. januar 2003 - 13:59 #20
Henrik -- Jeg har added dig.. jeg er  "Sir_Erugor@hotmail.com"
Avatar billede sirerugor Nybegynder
11. januar 2003 - 14:00 #21
ja ok det er da ok :)
Avatar billede terry Ekspert
11. januar 2003 - 14:01 #22
sireruger>IF there is something in dbLogin.Recordset("Username")  AND there is something in txtUser.Text AND they are the same, then you will perform

frmLogin.Hide
    frmSplash.Hide
    mdiMain.Show
    Exit Sub

IF they BOTH are empty then you will still perform
frmLogin.Hide
    frmSplash.Hide
    mdiMain.Show
    Exit Sub

IF they are NOT the same then you have to do soemthing else, and we cant see what is happening after

Loop
End If
End Sub
Avatar billede terry Ekspert
11. januar 2003 - 14:02 #23
Dont worry about me guys, if you can solve the problem then thats what its all about, but we would like to see the solution here please :o)
Avatar billede sirerugor Nybegynder
11. januar 2003 - 14:03 #24
Terry -- There is nothing else in the "cmdOK"... But VB thinks both of them are equal...?
Avatar billede sirerugor Nybegynder
11. januar 2003 - 14:04 #25
Deal dude :) *shakes*
Avatar billede heko124 Nybegynder
11. januar 2003 - 14:48 #26
Et foreløbigt svar kunne være:

dbLogin.RecordSource = "SELECT * FROM dbbrugere WHERE Username = " & txtUser.Text
dbLogin.Refresh

If Not dbLogin.Recordset.EOF Then ' findes han tjekker vi videre ellers sker  der ikke noget
    If txtKey.Text = "1111-55555-4444" Then ' tjekker om serienummer er korrekt
        MsgBox "Velkommen"
        frmLogin.Hide
        frmSplash.Hide
        frmOpret.Show
    Else
        MsgBox "Det indtastede serial key var forkert, prøv igen.", vbOKOnly, "Forkert Serial Key!"
        txtKey.Text = ""
        txtKey.SetFocus
    End If
  End If
 
  MsgBox "Ingen adgang"


henrik :-)
Avatar billede terry Ekspert
11. januar 2003 - 14:55 #27
?
Arent we going away from the original question?
what is THIS
If txtKey.Text = "1111-55555-4444" ?????
Avatar billede sirerugor Nybegynder
11. januar 2003 - 15:05 #28
Henrik --- txtKey, er et textfelt der bliver visible hvis man trykker på opret knappen... som er irrelevant nu.. Da vi har fået det til at virke... So the big question is... How do we get VB to chack the value of txtUser.Text and check with the database.. ?
Avatar billede sirerugor Nybegynder
11. januar 2003 - 21:20 #29
Henrik du får pointene når du poster det herinde :)
Avatar billede heko124 Nybegynder
12. januar 2003 - 16:25 #30
Ok
problemet var at logintextboxen var knyttet til datakontrollen så loginnavnet blev opdateret hver gang en bruger indtastede et brugernavn....

Henrik :-)
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