• Hi!

    Ich bin gerade dabei ein Login-System zu erstellen. Aber ich habe glaube ich einen Fehler gemacht, weil auf meiner Webseite "Notice: Undefined index: page in C:\xampp\htdocs\Deutsch\index.php on line 8" steht.


    Hier ist der Code:



    <?php
    session_start();
    $verhalten = 0;

    if(!isset($_SESSION["username"]) and !isset($_GET["page"])) {
    $verhalten = 0;
    }
    if($_GET["page"] == "log") {

    $user = $_POST["user"];
    $passwort = $_POST["passwort"];

    if ($user == "Marcello" and $passwort == "toll") {
    $_SESSION["username"] = $user;
    $verhalten = 1;
    } else {
    $verhalten = 2;
    }
    }
    ?>
    <html>
    <head>
    <title>hallo: Anmelden oder Registrieren</title>
    <?php
    if($verhalten == 1) {
    ?>
    <meta http-equiv="refresh" content="3; URL=Me.php" />
    <?php
    }
    ?>
    </head>
    <body>
    <?php
    if ($verhalten == 0) {
    ?>
    Bitte logge dich ein:<br />
    <form method="post" action="index.php?page=log">
    Username:<input type="text" name="user" /><br />
    Passwort:<input type="password" name="passwort" /><br />
    <input type="submit" name="Einloggen" />
    </form>
    <?php
    }
    if ($verhalten == 1) {
    ?>
    Sie haben sich erfolgreich eingeloggt und wirst nun Weitergeleitet...
    <?php
    }
    if ($verhalten == 2) {
    ?>
    Username oder Passwort falsch. <a href="index.php">zurück</a>.
    <?php
    }
    ?>
    </body>
    </html>


    Bitte helft mir:)

    Danke im Vorraus
    Marcello

  • "Notice" ist kein Fehler. "Notice" zeigt dir etwas an, was dir dabei helfen soll ggf. einen Fehler zu finden. In diesem Falle zeigt dir dieser
    Notice an, dass $_GET['page'] keinen Wert besitzt. Entweder man deaktivert das anzeigen von "Notices" in der PHP Config, oder du prüfst
    vor einer weiteren Operation ob $_GET['page'] einen Wert besitzt.

    Ein Fehler im diesem Sinne ist es nicht.


    :!: FileXs #Lieblingsmod. :!:
    ... still making kids cry since 2015.

  • Ein Notice ist eigentlich kein Problem denn kannst du ausschalten mit <?php error_reporting(0); ?>
    das passiert den meisten Anfängern beim Programmieren.
    Dein Code ist auch nicht gerade gut strukturiert. Sag uns mal was bei dem Login nicht funktioniert weil ich gerade am iPad bin kann ich selber nichts testen.

  • <?php error_reporting(0); ?>


    #edit
    du kannst aber auch

    if(isset($_GET['page'] == "log")){}

    einfügen dann ist dieser Notice auch weg. ;) denn das deaktivieren der Fehler Meldungen ist auch nicht so der bringern denn wenn du irgendwann an einem großen Script arbeitest das 1232 Zeilen lang ist und da nichts funktioniert wird dir auch kein Fehler angezeigt deshalb nimm die 2te Variante von mir :)


    Liebe Grüße

    Einmal editiert, zuletzt von ✗Leqend (18. November 2012 um 10:52)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!