Sie befinden sich hier im Forenarchiv von phpforum.de wenn Sie direkt ins Forum möchten, klicken Sie bitte hier. Zur Startseite kommen Sie hier.

Loginscript Problem

Das Problem besteht darin, dass wenn man sich einloggen weil, man immer auf die die "loginfail.php" geleitet wird.
Ich vermute mal da ist was im argen mit dem auslesen das Benutzerdaten aus der DB. Sicher bin ich mir da aber nicht.

Login.php

Code:                   In Zwischenablage kopieren (nur IE)
1">

cmslogin.php
Code:                   In Zwischenablage kopieren (nur IE)
2">

Die Tabellenspalten heissen: Name, Abteilung und Passwort
Die admin.php ist auch vorhanden.

Wäre nett wenn mir da jemand weiterhelfen könnte.
Hier gehts zum Orginal Eintrag "Loginscript Problem" im Forum

Antworten

Hallo Fiasko,
lass Dir doch zum Debugging mal den Wert von $level ausgeben, bevor das Case-Konstrukt ausgeführt wird.

Code:                   In Zwischenablage kopieren (nur IE)
3">

Alternativ solltest Du prüfen, ob die SQL-Abfrage überhaupt Ergebnisse liefert. Das kannst Du z.B. mit mysql_numrows machen.

Gruß,
Lius


2.

Der Inhalt von $level ist leer ... woran kann dat liegen?


3.

Guckst Du: http://www.faq-datenbank.de/index.php?sid=5648&aktion=artikel&rubrik=001003&id=26&lang=de

*** Nobody ***


4.

weil die Datenbankabfrage keine Ergebnisse lieferte!


5.

gut, das hab ich mir fast gedacht, nur warum liefert die Abfrage keine Ergebnisse? :(


6.

Haaalllllooooo! Nochmal: http://www.faq-datenbank.de/index.php?sid=5648&aktion=artikel&rubrik=001003&id=26&lang=de

$name und $passwort werden wohl schon keinen Wert haben.

Richtig debuggen
1. Man bemerkt, dass ein Skript nicht das tut, was es soll.
2. Man versucht, die Stelle die daran Schuld sein kann, schonmal einzugrenzen. Falls dies nicht geht, wird zunächst das komplette Skript als fehlerhaft angesehen.
3. An markanten Stellen im Skript lässt man sich wichtige Variableninhalte ausgeben und ggf. auch in bedingten Anweisungen eine kurze Ausgabe machen, um zu überprüfen, welche Bedingung ausgeführt wurde (oder auch nicht).
4. Schritt 3 wird so lange wiederholt, bis Unstimmigkeiten im Skript auffallen
5. Damit hat man das Problem (Unstimmigkeit) gefunden und kann versuchen diese zu beheben. Hierzu dienen dann die PHP-Dokumentation und andere Quellen als Ratgeber.
6. Lässt sich das konkrete Problem trotzdem nicht beheben, kann man in Foren um Rat fragen.
7. Das Programm läuft und man kann die Debug-Ausgaben wieder entfernen.

*** Nobody ***


7.

aha aha aha muss ich jetzt also vor jeder Variable (also alles vor dem ein $-Zeichen steht) entweder $_GET oder $_POST schreiben?


8.

nein.


9.

hmmm was muss ich dann tun?


10.

$name -> $_POST["name"]
$passwort -> $_POST["passwort"]

*** Nobody ***


11.

und warum nur bei den beiden Variablen?


12.

Weil die über das Formular übertragen werden. Hast Du den Link nicht gelesen?


13.

Doch habsch, aber da bezog sich dat alles auf URL "Sachen" und ich bin noch nicht so firm din PHP um das auf mein Prob zu übersetzen. Sorry.


Wie muss das denn jetzt geschrieben werden?

$quser .= "WHERE name = $_POST["name"] ";
$quser .= "AND passwort = $_POST["passwort"] ";

so jedenfalls nicht.


14.

Einfach am Anfang schreiben:
Code:                   In Zwischenablage kopieren (nur IE)
4">

Dann kannst Du den Rest so lassen.

*** Nobody ***


15.

Ah Vielen Dank, funktioniert...was mir nur gerade auffällt...sonderlich sicher ist das ganze ja nicht oder?
Ich hab die Url (bei mir: http://10.1.222.250/intranet/cms/admin.php) mal von einem anderen PC aufgerufen und dieser konnte sich ohne Loginabfrage direkt "einloggen".
Ich nehme mal an da muss ich noch Sessions einbauen?


16.

Zitat:
Ich nehme mal an da muss ich noch Sessions einbauen?
Besser wäre das. Oder Du benutzt .htaccess, dann macht allerdings das Login-Script keinen Sinn mehr.

*** Nobody ***


Hier gehts zum Orginal Eintrag "Loginscript Problem" im Forum
 
phpforum.de | Impressum | Handy Bundles