Probleme mit Login Script (Fatal Error)

Hallo nochmal,

wollte fragen, ob mir nicht vielleicht doch nochmal jemand helfen könnte. Das Script von Gainwar funktioniert zwar, aber ich möchte wirklich mein Script verwenden. Das Login soll über die Datenbank laufen.

Ich kopiere jetzt einfach nochmal meine Codes hier rein, vielleicht kann mir ja noch irgendjemand was dazu sagen. Ich komme wirklich nicht weiter.

1. Problem ist, wenn ich die richtigen Benutzerdaten eingebe, passiert nichts, sondern es öffnet sich einfach wieder das normale Login-Feld. Warum?

2. Problem ist, wenn ich einen Benutzernamen und ein falsches Passwort eingebe, kommt die Fehlermeldung "Ungültiges Passwort" und darunter steht gleich wieder das Login-Script (was super ist und so sein soll). Wenn ich allerdings keinen Benutzernamen auswähle, kommt die Fehlermeldung "Bitte wählen Sie einen Benutzernamen aus", allerdings ohne das das Login-Script darunter erscheint. Wie muss ich das Script umschreiben, damit auch da das Login-Script steht?


PHP:
<?php

//index.php

   error_reporting(E_ALL);
   include "config.php";
   
   @mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR die(mysql_error());
   mysql_select_db(MYSQL_DATABASE) OR die(mysql_error());

   if(isset($_GET['section']) AND ("admin" == $_GET['section'])) {
       session_start();
       if(!isset($_SESSION['IP'])) {
           $_SESSION['IP'] = $_SERVER['REMOTE_ADDR'];
       }
       if($_SESSION['IP'] != $_SERVER['REMOTE_ADDR']) {
           echo "<p>\n";
           echo "    Sie dürfen nicht die Session von einem\n";
           echo "    anderen user Benutzten. Bitte benutzen sie\n";
           echo "    folgenden Link um zur Homepage zu gelangen.\n";
           echo "    <a href=\"/\">Zurück zur Homepage</a>\n";
           echo "</p>\n";
           die(); 
       }
   }
   function array_stripslashes(&$var)
   {
        if(is_string($var)) {
            $var = stripslashes($var);
        } else {
            if(is_array($var)) {
                foreach($var AS $key => $value) {
                    array_stripslashes($var[$key]);
                }
            }
        }
    }
   if(get_magic_quotes_gpc()) {
       array_stripslashes($_GET);
       array_stripslashes($_POST);
       array_stripslashes($_COOKIE);
   }

   echo "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\"\n";
   echo "         \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n";
   echo "<html>\n";
   echo "    <head>\n";
   echo "        <title>Feuerwehr Sonnefeld Administration</title>\n";
   echo "        <meta http-equiv=\"Content-Type\" content=\"text/html; charset=ISO-8859-1\" />\n";
   echo "        <link rel=\"stylesheet\" type=\"text/css\" href=\"page.css\" />\n";
   echo "    </head>\n";
   echo "    <body>\n";
   echo "        <table style=\"width: 100%\">\n";
   echo "            <tr>\n";
   echo "                <td colspan=\"2\">\n";
   include "banner.php";
   echo "                </td>\n";
   echo "            </tr>\n";
   echo "            <tr>\n";
   echo "                <td>\n";
   include "admin.php";
   echo "                </td>\n";
   echo "            </tr>\n";
   echo "        </table>\n";
   echo "    </body>\n";
   echo "</html>\n";
?>

PHP:
<?php

//admin.php

    if(isset($_GET['action']) AND ("logout" == $_GET['action'])) {
        session_destroy();
        echo "<p>\n";
        echo "    Sie haben sich ausgeloggt. Um wieder in den Adminbereich\n";
        echo "    zu kommen müssen Sie Sich wieder Einloggen\n";
        echo "</p>\n";
    } else {
        if(isset($_POST['UserID']) AND '0' == $_POST['UserID']) {
            echo "<p>\n";
            echo "    Bitte wählen Sie einen Benutzernamen aus.\n";
            echo "</p>\n";
        } else {
            if(isset($_POST['UserID'], $_POST['Password']) AND
               login_right(addslashes($_POST['UserID']),
                           addslashes($_POST['Password']))) {
                $_SESSION['ID'] = $_POST['UserID'];
            }
            if(isset($_SESSION['ID'])) {
                echo "<p>\n";
                echo "    Willkommen im Adminbereich <br />\n";
                echo "    <a href=\"index.php?section=admin&amp;".SID."\">Repeat</a>\n";
                echo "    <a href=\"index.php?section=admin&amp;action=logout&amp;".SID."\">Ausloggen</a>\n";
                echo "</p>\n";
            } else {
                if(isset($_POST['submit'])) {
                     echo "<p class=\"error\">\n";
                     echo "    Ungültiges Password.\n";
                     echo "</p>\n";
                }
                echo "<form action=\"index.php?section=admin\" method=\"post\" class=\"admin_form\">\n";
                echo "    <table>\n";
                echo "        <tr>\n";
                echo "            <th colspan=\"2\">\n";
                echo "                <h2>Adminbereich</h2>\n";
                echo "            </th>\n";
                echo "        </tr>\n";
                echo "        <tr>\n";
                echo "            <td>\n";
                echo "                <label for=\"name\">Name:</label>\n";
                echo "            </td>\n";
                echo "            <td>\n";
                $sql = "SELECT
                            `ID`,
                            `Name`
                        FROM
                            `users`
                        ORDER BY
                            `Name` ASC;";
                $result = mysql_query($sql) OR die(mysql_error());
                echo "                <select size=\"1\" name=\"UserID\" id=\"name\">\n";
                echo "                    <option value=\"0\" selected=\"selected\">Bitte wählen</option>\n";
                while($row = mysql_fetch_assoc($result)) {
                    echo "<option value=\"".$row['ID']."\">".$row['Name']."</option>\n";
                }
                echo "                </select>\n";
                echo "            </td>\n";
                echo "        </tr>\n";
                echo "        <tr>\n";
                echo "            <td>\n";
                echo "                <label for=\"password\">Password:</label>\n";
                echo "            </td>\n";
                echo "            <td>\n";
                echo "                <input type=\"password\" name=\"Password\" id=\"password\"/>\n";
                echo "            </td>\n";
                echo "        </tr>\n";
                echo "        <tr>\n";
                echo "            <td colspan=\"2\">\n";
                echo "                <input type=\"submit\" name=\"submit\" value=\"Abschicken\" />\n";
                echo "                <input type=\"reset\" name=\"submit\" value=\"Zurücksetzen\" />\n";
                echo "            </td>\n";
                echo "        </tr>\n";
                echo "    </table>\n";
                echo "</form>\n";
            }
        }
    }
?>

PHP:
<?php

//config.php

    include 'constant.php';
    include 'functions.php';
?>

PHP:
<?php
	// constant.php
	
	define('MYSQL_HOST', 'xxx');
	define('MYSQL_USER', 'xxx'); 
	define('MYSQL_PASS', 'xxx');
	define('MYSQL_DATABASE', 'xxx');
?>

PHP:
<?php

//functions.php

    function login_right($id, $pass)
    {
        $sql = "SELECT
                    COUNT(*) as Anzahl
                FROM
                    users
                WHERE
                    ID = '".$id."' AND
                    Password = MD5('".$pass."');";
        $result = mysql_query($sql) OR die(mysql_error());
        $row = mysql_fetch_assoc($result);
        mysql_free_result($result);
        return $row['Anzahl'];
    }
?>

PHP:
//page.css

#banner {
    height: 300px;
}
#mitte {
    width: 79%;
    float:left;
}
 
Zurück