vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevAniGif - als kostenlose Vollversion auf unserer vb@rchiv CD Vol.5  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Re: Hilfe zu Tip 
Autor: unbekannt
Datum: 23.03.03 19:14

Hi Big Boy,

mal eine ernste Meinung dazu:

Das Benutzerdaten in eine Datenbank abgelegt werden, ist logisch, weil nur eine Datenbank eine (nicht die perfekte) Sicherheit bietet - die sonst schwer erkauft werden müsste.
Für eine UserName + UserPwd - Abfrage führen tausende Wege nach Rom. Hier bist Du eben als Entwickler gefragt, wie Du das in Deinem Programm implementieren willst. Hier gibt es einfach keine vorgefertigten Konzepte.

Mit was Du Dich auseinandersetzen musst ist: Wie bringe ich die Dialogdaten zur Datenbank und bekomme von dort ein Ergbnis.

Es ist eine völlig einfache SQL-Abfrage. "Prüfe USER ob Benutzername und Passwort bekannt ist, gebe ggf. besondere Daten zurück - wenn ja!"

Um soetwas zu realisieren müsst Du Dich eben in die Datenbanksystematiken einarbeiten oder lässt es.

Alles Andere führt weder Dich noch sonst jemand auf einen grünen Zweig.

Um mich des Verdachts zu entheben, ein Schwaller zu sein, ein Beispiel (PowerBasic - läßt sich aber fast 1:1 in VB übernehmen)

 
FUNCTION FindUser(BYVAL sUserName AS STRING, BYVAL sPwd AS STRING) AS BYTE
    LOCAL oDBEngine    AS DISPATCH
    LOCAL oDB          AS DISPATCH
    LOCAL oRs          AS DISPATCH
    LOCAL vDBName      AS VARIANT
    LOCAL vFalse       AS VARIANT
    LOCAL vPwd         AS VARIANT
    LOCAL vDB          AS VARIANT
    LOCAL vSQL         AS VARIANT
    LOCAL vRs          AS VARIANT
    LOCAL vEOF         AS VARIANT
    LOCAL vFldName     AS VARIANT
    LOCAL vValue       AS VARIANT
    LOCAL vAnzahl      AS VARIANT
 
    SET oDBEngine = NEW DISPATCH IN GetIniString("DPlan","DAOEngine")
    IF OBJPTR(oDBEngine)=0 THEN
        MSGBOX "Kein Zugriff auf COM-Komponente.",%MB_IconStop,"Schwerer" & _
          "Systemfehler"
        EXIT FUNCTION
    END IF
    vFalse=%False
    vPwd = ";pwd = " + $DBPwd
    vDBName=GetIniString("DPlan","Datenbankpfad")+GetIniString( _
      "DPlan","BenutzerDB")
    OBJECT CALL oDBEngine.OpenDataBase(vDBName,vFalse,vFalse,vPwd) TO vDB
    SET oDB = vDB
    IF OBJPTR(oDB)=0 THEN
        MSGBOX "Datenbank Benutzer.XDB konnte nicht geöffnet" & _
          "werden",%MB_ICONWARNING,"Fehler beim Datenbankzugriff"
        EXIT FUNCTION
    END IF
 
    vSQL = "SELECT UserName, Pwd, PID, Recht FROM USER WHERE " + _
          "UserName = '" + sUserName + "' AND PWD = '" + sPwd + "'"
 
    OBJECT CALL oDB.OpenRecordSet(vSQL) TO vRs
    SET oRs = vRs
    IF OBJPTR(oRs) = 0 THEN
        OBJECT CALL oDB.Close
        MSGBOX "Die Tabelle USER konnte nicht gefunden" & _
          "werden.",%MB_IconWarning, "Fehler beim Datenbankzugriff"
        EXIT FUNCTION
    END IF
 
    OBJECT GET oRs.EOF TO vEOF
    IF VARIANT#(vEOF) = 0 THEN
        vFldName = "PID"
        OBJECT GET oRs.Fields(vFldName).Value TO vValue
        ANGEMELDET.PID = VARIANT#(vValue)
        vFldName = 0
        vFldName = "Recht"
        OBJECT GET oRs.Fields(vFldName).Value TO vValue
        ANGEMELDET.UserRecht = VARIANT$(vValue)
        ANGEMELDET.UName = sUserName
    END IF
 
    OBJECT CALL oDB.Close
    SET oDB = NOTHING
    SET oDBEngine = NOTHING
    FUNCTION = 1
END FUNCTION
0
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Hilfe zu Tip521Big Boy23.03.03 18:53
Re: Hilfe zu Tip271unbekannt23.03.03 19:14
Re: Hilfe zu Tip223Big Boy25.03.03 03:09

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel