Zur Navigation

nach Login Layout ändern

1 webuser

Hallo,
ich habe ein Login Formular. Nach erfolgreicher Anmeldung sollen die Eingabefelder verschwinden und das Programm weiterlaufen. Aber ich bekomme den Status "wie" zum Umschalten nicht übergeben.
Gruß
Webuser


<?php
    
require "connect.php";


if (empty($wie))  { $wie ="start";} 
//testweise frage ich den Status ab, 
echo "status:".$wie;
?>
<html>
<head>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
 <?php
 echo "<div class='form-wrapper'>  ";

 // hier die Eingaben beim Aufruf der Seite
    if ($wie == "start"){

    echo "<form action='#' method='post'>  ";
    echo "<h3>Login here</h3>"  ;
    echo "<div class='form-item'> ";
    echo "<input type='text' name='user' required='required' placeholder='Username' autofocus required></input> ";
    echo "</div>";
    echo "<div class='form-item'>  ";
    echo "<input type='password' name='pass' required='required' placeholder='Password' required></input>";
    echo "</div>";
    echo "<div class='button-panel'> ";
    echo "<input type='submit' class='button' title='Log In' name='login' value='Login'></input>";
    echo "</div>  ";
    echo "</form>  ";
   }
   // wenn die Eingaben richtig waren, soll man hier landen
    if ($wie == "ok"){
    echo "<h3>Login here</h3>"  ;

   }

        if (isset($_POST['login']))
                {
                        $username = mysqli_real_escape_string($conn, $_POST['user']);
                        $password = mysqli_real_escape_string($conn, $_POST['pass']);

                        $query                 = mysqli_query($conn, "SELECT * FROM tabelle WHERE pw='$password' and Name='$username'");
                        $row                = mysqli_fetch_array($query);
                        $num_row         = mysqli_num_rows($query);

                        if ($num_row > 0)
                                {

                            //wenn eine Eingabe gefunden wurde, wird der Status auf -ok- gesetzt
                                   $wie = "ok";

                                         }
                        else
                                {
                                        echo 'Invalid Username and Password Combination';
                                }
                }
                mysqli_close($conn);
  ?>
  <div class="reminder">

    <p><a href="#">Passwort vergessen?</a></p>
  </div>

</div>

</body>
</html>

03.08.2019 11:02

2 Jörg

Ich würde die Überprüfung von $_POST['login'] ganz nach oben setzen:

<?php

require "connect.php";

if (isset($_POST['login'])) {
    /* ... */
    if ($num_row > 0) {
        $wie = "ok";
    } else {
        $wie = "nicht-ok";
    }
} else {
    $wie = "start";
}

mysqli_close($conn);

echo $wie;

Die Fehlermeldung 'Invalid Username and Password Combination' kannst du weiter unten unter der Bedingung ($wie == 'nicht-ok') ausgeben.

03.08.2019 11:30 | geändert: 03.08.2019 11:33

1 Forenmitglied fand diesen Beitrag gut

3 webuser

danke Jörg

03.08.2019 13:22

Beitrag schreiben (als Gast)





[BBCode-Hilfe]