Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo Leute,

ich hab da ein Problem mit einer Paßwortabfrage.

Ich hab eine ASP-Seite erstellt, in der ich eine Paßwortabfrage erstellen möchte die Benutzername und Paßwort mit einer Access-Datenbank vergleicht.

Die Eingabe des Benutzernamens und des Passworts auf der ASP-Seite habe ich mit einem Textfeld gelöst, deren Werte ich mit

"Request" gelöst. Die Datenbank lese ich mich hilfe ODBC-Datenbankverbindung ein.

Das Einlesen der Datenbank, und das Einlesen der Eingabe in den Textfelder funktioniert auch schon, nur nicht das er die Eingabe mit der Datenbank vergleicht!! :(

Es währe nett wenn mir jemand einen Beispiel-script oder ähnliches geben könnte.

Danke im Vorraus und bis Bald

Oliver198:D

Geschrieben

Also ich mache es so : zuerst wird eine Seite aufgerufen wo der benutzer seinene Namen und ein PW eingibt, dann wird eine zeite Seite aufgerufen die Checkt ob die Daten richtig sind, und wenn die richtig sind geht es zur eigentlichen Seite:

Login Seite :



   Response.Write"<font face='Arial,Helvetica' color='blue'>"

   Response.Write"<div align='center'>"

     Response.Write"<form name='Anmeldung' action='login_check.asp' method='post'>"


           Response.Write"<table border='0' cellspacing='5px' cellpadding='5px'>"

                  Response.Write"<Tr>"

                      Response.Write"<th colspan='2'>"

                          Response.Write"<font size='6'>Administrations-Anmeldung</font>"

                      Response.Write"</th>"

                  Response.Write"</tr>"

                  Response.Write "<tr>"

                     Response.Write "<td colspan='2'>"

                          Response.Write "<hr color='blue'>"

                     Response.Write "</td>"

                  Response.Write "</tr>"

                  Response.Write"<tr>"

                      Response.Write"<td>"

                          Response.Write"Benutzer :"

                      Response.Write"</td>"

                      Response.Write"<td>"

                          Response.Write"<input name='Benutzer' align='center' type='text' size='30' value=''>"

                      Response.Write"</td>"

                  Response.Write"</tr>"

                  Response.Write"<tr>"

                      Response.Write"<td>"

                          Response.Write"Passwort :"

                      Response.Write"</td>"

                      Response.Write"<td>"

                          Response.Write"<input name='Passwort' align='center' type='password' size='30' value=''>"

                      Response.Write"</td>"

                  Response.Write"</tr>"

                  Response.Write "<tr>"

                     Response.Write "<td colspan='2'>"

                          Response.Write "<hr color='blue'>"

                     Response.Write "</td>"

                  Response.Write "</tr>"

                  Response.Write"<Tr>"

                      Response.Write"<td>"

                          Response.Write" "

                      Response.Write"</td>"

                      Response.Write"<td align='left'>"

                          Response.Write"<input name='Anmelden' align='center' type='submit' value='Anmelden'>"

                      Response.Write"</td>"

                  Response.Write"</tr>"

           Response.Write"</table>"

     Response.Write"</form>"

   Response.Write"</div>"

Passwort Test :

<%

dim benutzer

dim passwort


Benutzer = LCase(TRIM(Request("Benutzer")))

Passwort = TRIM(Request("Passwort"))


'Datenverbindung zum DB Server aufbauen

SQLServerConnection = "driver={SQL Server};server=IP;uid=USER;pwd=PW;database=DB"

Set db = Server.CreateObject("ADODB.Connection")

'Set Daten = Server.CreateObject("ADODB.Recordset")

db.open SQLServerConnection



'Response.Write "Benutzer : "& Benutzer &"<br>"

'Response.Write "Passwort : "& Passwort & "<br>"


SQLQuery ="SELECT * FROM Logins WHERE login='"& Benutzer &"'"

Set User = db.Execute (SQLQuery)

    if not User.eof then

      if (Benutzer = LCase(User.Fields("login"))) then

         if (Passwort = User.Fields("passwort")) then

            Session("Benutzername") = Benutzer

            Session.Timeout = 5

            'Response.Write ("ID der Session :" & Session.SessionID)

            Session("BenutzerSessionID") = Session.SessionID

            'Response.Write lsSessionID

            Response.Redirect ("admin.asp")

         else

            Response.Write "<div align='center'>"

            Response.Write "<font face='Arial,Helvetica' color='red'>"

            Response.Write "<br><br><br>"

            Response.Write"<h2>Das war leider das falsche Passwort !!!</h2>"

            Response.Write"</div>"

         end if

      end if

    else

          Response.Write "<div align='center'>"

          Response.Write "<font face='Arial,Helvetica' color='red'>"

          Response.Write "<br><br><br>"

          Response.Write"<h2>Diesen User gibt es leider nicht !!!</h2>"

          Response.Write"</div>"

    end if

%>

hierbei musst du nur drauf achten das eine Verbindung zu einem SQL Server aufgemacht wird, das musst du natürlich abändern (steht in jedem ASP Handbuch)

Und hierbei wird auch noch Geprüft wie lange der User nichts mehr gemacht hat und wenn er länger als 60 Minuten keine Seite mehr aufgerufen hat muss er sich neu anmelden ....

Geschrieben

Danke für deine Hilfe Panther,

ich habs zwar trotzdem mit der Access-Datenbank gemacht, aber dein Script hat mir den entscheidenden Tipp gegeben!!!!!

Und ich habs dann fertiggebracht das es funktioniert!!:marine

Tschau

Oliver198;)

Geschrieben

Kleine stilistische Anmerkung:

Ihr wisst schon, daß ihr dies



Response.Write"<font face='Arial,Helvetica' color='blue'>"

   Response.Write"<div align='center'>"

     Response.Write"<form name='Anmeldung' action='login_check.asp' method='post'>"


           Response.Write"<table border='0' cellspacing='5px' cellpadding='5px'>"

                  Response.Write"<Tr>"

                      Response.Write"<th colspan='2'>"

                          Response.Write"<font size='6'>Administrations-Anmeldung</font>"

                      Response.Write"</th>"

                  Response.Write"</tr>"

                  Response.Write "<tr>"

                     Response.Write "<td colspan='2'>"

                          Response.Write "<hr color='blue'>"

                     Response.Write "</td>"

                  Response.Write "</tr>"

                  Response.Write"<tr>"

                      Response.Write"<td>"

                          Response.Write"Benutzer :"

                      Response.Write"</td>"

                      Response.Write"<td>"

                          Response.Write"<input name='Benutzer' align='center' type='text' size='30' value=''>"

                      Response.Write"</td>"

                  Response.Write"</tr>"

                  Response.Write"<tr>"

                      Response.Write"<td>"

                          Response.Write"Passwort :"

                      Response.Write"</td>"

                      Response.Write"<td>"

                          Response.Write"<input name='Passwort' align='center' type='password' size='30' value=''>"

                      Response.Write"</td>"

                  Response.Write"</tr>"

                  Response.Write "<tr>"

                     Response.Write "<td colspan='2'>"

                          Response.Write "<hr color='blue'>"

                     Response.Write "</td>"

                  Response.Write "</tr>"

                  Response.Write"<Tr>"

                      Response.Write"<td>"

                          Response.Write" "

                      Response.Write"</td>"

                      Response.Write"<td align='left'>"

                          Response.Write"<input name='Anmelden' align='center' type='submit' value='Anmelden'>"

                      Response.Write"</td>"

                  Response.Write"</tr>"

           Response.Write"</table>"

     Response.Write"</form>"

   Response.Write"</div>"



auch mit Code-Unterbrechern ("<%" , "%>")schreiben könnt, oder? :confused:

Das macht die Sache wesentlich einfacher, keine einfachen Hochkommas anstatt typographischen, kein ewiges response.write mehr.

Geschrieben

Ja weiss ich aber das m,acht die Sache nicht immer einfacher, du kannst solche anweisungen immer nur direkt nach den <% mit nem = setzen , oder halt den Quelltext andauernd unterbrechen und pures HTML einbauen, nur geht da manchmal die Übersicht flöten.

Finde ich jedenfalls.

Greetz

Panther

Geschrieben
Original geschrieben von Panther

Ja weiss ich aber das m,acht die Sache nicht immer einfacher, du kannst solche anweisungen immer nur direkt nach den <% mit nem = setzen , oder halt den Quelltext andauernd unterbrechen und pures HTML einbauen, nur geht da manchmal die Übersicht flöten.

Finde ich jedenfalls.

Greetz

Panther

Schon, aber auch den kannst du der Übersichthalber einrücken. Außerdem machst du auch nichts anderes wenn du HTML aus String ausgeben lässt.

Findest du die elendige Tipperei nicht lästig?

Geschrieben

jain, ich fand es lästiger irgendein Prob in der Darstellung zu suchen und erstmal rausbekommen zu müssen wo sich was andert, ausserdem kann man so dem HTML auch Parameter übergeben (ist ja nur ein ausschnitt und nicht die komplette Seite :D).

Geschrieben

Naja, ist halt ja ne Sache des eigenen Stils... :D

Hab mir mal deinen Code oben angeschaut... du schreibst in der Beschreibung, daß der Timeout 60 Minuten lang ist.. wieso setzt du ihn dann auf 5?

(Ich weiß, ich kann kleinlich sein ;))

Geschrieben

war mein Fehler, das war noch das Testscript ob das mit dem Timeout so funktioniert wie ich das wollte, und da wollte ich halt keine 60 Minuten warten und habs auf 5 gestellt.

Hab nicht mehr so in den Code geschaut und geschrieben was es bei der endgültigen Fassung hat .......

Keine Sorge bist nicht kleinlich, das könnte ja sonst zu verwirrungen führen.

Greetz

Panther

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...