|
| |

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 FUNCTION0 |  |
 | 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 |
  |
|
Neu! sevCoolbar 3.0 
Professionelle Toolbars im modernen Design!
Mit sevCoolbar erstellen Sie in wenigen Minuten ansprechende und moderne Toolbars und passen diese optimal an das Layout Ihrer Anwendung an (inkl. große Symbolbibliothek) - für VB und MS-Access Weitere InfosTipp des Monats Oktober 2025 Matthias KozlowskiUmlaute konvertierenErsetzt die Umlaute in einer Zeichenkette durch die entsprechenden Doppelbuchstaben (aus ä wird ae, usw.) Access-Tools Vol.1 
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
| |
|
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
|
|