Ergebnis 1 bis 7 von 7

Thema: Login-Script will einfach nicht

  1. #1
    Azubi(ne)
    Registriert seit
    18.03.2005
    Beiträge
    62
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard Login-Script will einfach nicht

    Ich habe ein Problem mit diesem Code:
    [php:1:96ec10da94]
    <?php
    session_start();

    // Variablen, die im ganzen Skript gebraucht werden
    $benutzername = $_POST['benutzername'];
    $benutzerpasswort = $_POST['benutzerpasswort'];

    // Funktion echo_login-error()
    function echo_login_error() {
    echo "<table width=\"100%\" bgcolor=\"#000000\" cellspacing=\"1\" cellpadding=\"5\">\n";
    echo " <tr>\n";
    echo " <td><b style=\"color:#ffffff;font-family:arial;font-size:12px;\">\n";
    echo " Fehler[/b]\n";
    echo " </td>\n";
    echo " </tr>\n";
    echo " <tr>\n";
    echo " <td bgcolor=\"#ffffff\" style=\"font-family:arial;font-size:12px;\">\n";
    echo " Bitte gehen Sie <a href=\"javascript:history.back()\">zur&uuml;ck</a> und korrigieren Sie Ihre Eingabe\n";
    echo " </td>\n";
    echo " </tr>\n";
    echo "</table>";
    }

    // Verbindung zur Datenbank herstellen
    include "dbconnect.inc.php";

    // Überprüfen, ob die Benutzerdaten gemacht wurden/übereinstimmen
    if (!($benutzername == "") AND !($benutzerpasswort == "")) {
    $sql = "SELECT benutzerid, benutzername, benutzerpasswort FROM benutzer WHERE benutzername = '$benutzername'";
    $result = mysql_query($sql) or die (mysql_error());
    $abfrage = mysql_num_rows($result) or die (mysql_error());
    if ($abfrage) {
    $benutzerdaten = mysql_fetch_assoc($result) or die (mysql_error());
    $benutzerpasswort = md5($benutzerpasswort);
    if (($benutzername == $benutzerdaten['benutzername']) AND ($benutzerpasswort == $benutzerdaten['benutzerpasswort'])) {
    echo "<a href=\"inside_index.php>weiter</a>\"";
    } else {
    echo_login_error();
    }
    } else {
    echo_login_error();
    }
    } else {
    echo_login_error();
    }
    ?>[/php:1:96ec10da94]
    Die Variablen $benutzername und $benutzerpasswort werden per POST aus einem Formular auf der vorigen Seite übergeben.
    Das Script arbeitet nicht so, wie es soll:
    1. Wenn man richtige Daten eingibt, wird die echo_error_login() aufgerufen
    2. Gibt man nichts ein, wird eine leere Seite angezeigt

    Ich denke, aus dem Code müsste man sehen, was das Script eigentlich (!) tun sollte.

    Ich hoffe, mir kann jemand helfen, mach schon lange daran rum.
    Danke schon im Voraus!

    Hier meine phpinfo():
    http://www.maucher-pm.de/info.html
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Kaiser(in)
    Registriert seit
    03.06.2004
    Beiträge
    2.557
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard Re: Login-Script will einfach nicht

    Zitat Zitat von Pie
    1. Wenn man richtige Daten eingibt, wird die echo_error_login() aufgerufen

    ..wär intressant zu wissen, welchen von den 3 er ausgibt. geh mal auf fehlersuche. damit mein ich nicht, dass du den "code" durchackerst, sondern nach dem was-passiert-wenn-prinzipt vorgehst.

    außerdem kommt mit das:
    [php:1:a33efdb858]<?php
    if (!($benutzername == "") AND !($benutzerpasswort == ""))
    ?>[/php:1:a33efdb858]

    nicht ganz gut vor.... wie wärs mit if ($benutzer != "") oder (isset($benutzer))

  3. #3
    Azubi(ne)
    Themenstarter

    Registriert seit
    18.03.2005
    Beiträge
    62
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Ok, werde mich mal um die Fehlermeldungen kümmern, gebe halt jeweils noch einen echo aus.

    Mit isset klappt's irgendwie net, aber ich probier's mit != ""

    edit:
    1. Habe jetzt von oben nach unten unter die drei echo_login_error echo "Fehler1", "Fehler2" oder "Fehler3" eingefügt

    Wenn ich die richtigen Daten angebe, erschein(en!) die Fehler 1 + 2
    Wenn ich nichts angebe, erscheint Fehler 3 - müsste ja stimmen
    Wenn ich Müll eingebe, erscheint die leere Seite

    2. Sollte ich die beiden != Vergleiche jeweils in Klammern setzen oder nicht? Ich kann da nämlich keinen Unterschied erkennen.

    edit: Habe jetzt folgendes gemacht, wegen dem isset, aber das Ergebnis ist nach wie vor das gleiche.
    [php:1:a4eff34bb4]<?php
    if (isset($benutzername) AND isset($benutzerpasswort)) {

    ?>[/php:1:a4eff34bb4]

  4. #4
    Kaiser(in)
    Registriert seit
    03.06.2004
    Beiträge
    2.557
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    [php:1:05ad86cea5]<?php
    #...
    $benutzerdaten = mysql_fetch_assoc($result) or die (mysql_error());
    $benutzerpasswort = md5($benutzerpasswort);
    if (($benutzername == $benutzerdaten['benutzername']) AND ($benutzerpasswort == $benutzerdaten['benutzerpasswort'])) {
    echo "<a href=\"inside_index.php>weiter</a>\"";
    } else {
    echo_login_error();
    #...
    ?>[/php:1:05ad86cea5]

    mach da eine while schleife drum rum.

    z.b. while ($benutzerdaten = mysql_fetch_assoc($resul)) {...

  5. #5
    Kaiser(in)
    Registriert seit
    03.06.2004
    Beiträge
    2.557
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Zitat Zitat von Rocco
    [php:1:294b247b4d]<?php
    #...
    $benutzerdaten = mysql_fetch_assoc($result) or die (mysql_error());
    $benutzerpasswort = md5($benutzerpasswort);
    if (($benutzername == $benutzerdaten['benutzername']) AND ($benutzerpasswort == $benutzerdaten['benutzerpasswort'])) {
    echo "<a href=\"inside_index.php>weiter</a>\"";
    }
    #hier das else weg
    #...
    ?>[/php:1:294b247b4d]

    mach da eine while schleife drum rum.

    z.b. while ($benutzerdaten = mysql_fetch_assoc($resul)) {...
    ...und das erste else lass weg

  6. #6
    Azubi(ne)
    Themenstarter

    Registriert seit
    18.03.2005
    Beiträge
    62
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Okay, werde es mal probieren...

  7. #7
    Azubi(ne)
    Themenstarter

    Registriert seit
    18.03.2005
    Beiträge
    62
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Hab's jetzt so, und jetzt kommt immer eine leere Seite

    [php:1:25a4a555be]
    <?php
    session_start();

    // Variablen, die im ganzen Script gebraucht werden
    $benutzername = $_POST['benutzername'];
    $benutzerpasswort = $_POST['benutzerpasswort'];

    // Funktion echo_login-error()
    function echo_login_error() {
    echo "<table width=\"100%\" bgcolor=\"#000000\" cellspacing=\"1\" cellpadding=\"5\">\n";
    echo " <tr>\n";
    echo " <td><b style=\"color:#ffffff;font-family:arial;font-size:12px;\">\n";
    echo " Fehler[/b]\n";
    echo " </td>\n";
    echo " </tr>\n";
    echo " <tr>\n";
    echo " <td bgcolor=\"#ffffff\" style=\"font-family:arial;font-size:12px;\">\n";
    echo " Bitte gehen Sie <a href=\"javascript:history.back()\">zur&uuml;ck</a> und korrigieren Sie Ihre Eingabe\n";
    echo " </td>\n";
    echo " </tr>\n";
    echo "</table>";
    }

    // Verbindung zur Datenbank herstellen
    include "dbconnect.inc.php";

    // Überprüfen, ob die Benutzerdaten gemacht wurden/übereinstimmen
    if (isset($benutzername) AND isset($benutzerpasswort)) {
    $sql = "SELECT benutzerid, benutzername, benutzerpasswort FROM benutzer WHERE benutzername = '$benutzername'";
    $result = mysql_query($sql) or die (mysql_error());
    $abfrage = mysql_num_rows($result) or die (mysql_error());
    if ($abfrage) {
    while ($benutzerdaten = mysql_fetch_assoc($result) or die (mysql_error())){
    $benutzerpasswort = md5($benutzerpasswort);
    if (($benutzername == $benutzerdaten['benutzername']) AND ($benutzerpasswort == $benutzerdaten['benutzerpasswort'])) {
    echo "<a href=\"inside_index.php>weiter</a>\"";
    }
    }
    } else {
    echo_login_error();
    } echo "Fehler2";
    } else {
    echo_login_error();
    echo "Fehler3";
    }

    ?>[/php:1:25a4a555be]

    Hab ich dich falsch verstanden?

Ähnliche Themen

  1. login script für hp ?
    Von nick2 im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 4
    Letzter Beitrag: 10.05.2008, 15:13
  2. Login Script
    Von wurmax im Forum HTML & CSS Forum
    Antworten: 4
    Letzter Beitrag: 28.05.2006, 23:16
  3. Login script läuft nur bei Firefox, nicht beim IE!
    Von -nitro- im Forum HTML & CSS Forum
    Antworten: 6
    Letzter Beitrag: 24.01.2006, 09:44
  4. Downloads einfach anbieten (mittels Script)
    Von CHIEFmaster im Forum HTML & CSS Forum
    Antworten: 10
    Letzter Beitrag: 02.01.2006, 12:57
  5. PHP Login Script
    Von Redtheets im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 47
    Letzter Beitrag: 15.02.2005, 15:07

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •