Heim  >  Artikel  >  Backend-Entwicklung  >  So schreiben Sie mit PHP einen erfolgreichen Login-Sprung

So schreiben Sie mit PHP einen erfolgreichen Login-Sprung

PHPz
PHPzOriginal
2023-04-19 11:38:35974Durchsuche

PHP ist eine serverseitige Skriptsprache, die in der Webentwicklung weit verbreitet ist und für die Erstellung dynamischer Webseiten und die Entwicklung von Webanwendungen verwendet werden kann. Bei der Website-Entwicklung ist das Anmeldesystem eine sehr häufige Funktion, und das Springen zur angegebenen Seite nach erfolgreicher Anmeldung ist ebenfalls ein wichtiger Teil des Benutzererlebnisses. In diesem Artikel wird erläutert, wie Sie mit PHP die Funktion schreiben, um einen erfolgreichen Login-Sprung zu erreichen.

1. Erstellen Sie eine Formularseite

Zuerst müssen wir eine Anmeldeseite erstellen, auf der Benutzer ihren Benutzernamen und ihr Passwort eingeben können. Um die Lesbarkeit dieser Seite zu verbessern, können wir CSS-Stile in HTML verwenden, um die Seite zu verschönern. Unsere Formularseite sollte den folgenden Inhalt enthalten:

  • Ein Formular mit Eingabefeldern für Benutzernamen und Passwort;
  • Eingabeaufforderungen für Fehler;
  • Der HTML-Code lautet wie folgt:
  • <!DOCTYPE html>
    <html>
    <head>
        <title>登陆页面</title>
        <style>
            body{
                background-color: #F4F4F4;
            }
            
            .login{
                margin: 100px auto;
                border: 1px solid #ccc;
                width: 400px;
                background-color: #fff;
                padding: 20px;
                border-radius: 10px;
                box-shadow: 0 0 10px #ccc;
            }
            
            input[type=text], input[type=password]{
                width: 100%;
                padding: 10px;
                margin: 8px 0;
                display: inline-block;
                border: 1px solid #ccc;
                box-sizing: border-box;
                border-radius: 5px;
            }
            
            button[type=submit]{
                background-color: #4CAF50;
                color: white;
                padding: 10px 18px;
                margin: 8px 0;
                border: none;
                border-radius: 4px;
                cursor: pointer;
            }
            
            button[type=submit]:hover{
                background-color: #45a049;
            }
            
            .error{
                color: red;
            }
        </style>
    </head>
    <body>
        <div class="login">
            <h2>登陆页面</h2>
            <form action="process.php" method="POST">
                <label for="username">用户名</label>
                <input type="text" id="username" name="username" placeholder="请输入用户名">
                <label for="password">密码</label>
                <input type="password" id="password" name="password" placeholder="请输入密码">
                <button type="submit">登陆</button>
                <?php
                    if(isset($_GET[&#39;error&#39;])){
                        if($_GET[&#39;error&#39;] == &#39;empty&#39;){
                            echo "<p class=&#39;error&#39;>请输入所有字段!</p>";
                        }
                        elseif ($_GET['error'] == 'wrong') {
                            echo "<p class=&#39;error&#39;>请输入正确的用户名和密码!</p>";
                        }
                    }
                ?>
            </form>
        </div>
    </body>
    </html>
  • 2. Benutzername und Passwort überprüfen

Als nächstes müssen wir überprüfen, ob der vom Benutzer eingegebene Benutzername und das Passwort korrekt sind. Wir können PHP auf der Serverseite verwenden, um diesen Prozess zu implementieren. Zuerst müssen wir auf der Serverseite eine Datei „process.php“ erstellen. Diese Datei empfängt die Formulardaten und überprüft, ob Benutzername und Passwort korrekt sind. Wenn dies korrekt ist, leiten wir den Benutzer auf eine andere Seite in dieser Datei weiter.

<?php
    session_start();
    if(isset($_POST[&#39;username&#39;]) && isset($_POST[&#39;password&#39;])){
        include &#39;db_connection.php&#39;;
        $username = $_POST[&#39;username&#39;];
        $password = $_POST[&#39;password&#39;];
        if(empty($username) || empty($password)){
            header("Location: index.php?error=empty");
            exit();
        }
        else{
            $sql = "SELECT * FROM users WHERE username=&#39;$username&#39; AND password=&#39;$password&#39;";
            $result = mysqli_query($conn, $sql);
            if(mysqli_num_rows($result) === 1){
                $row = mysqli_fetch_assoc($result);
                if($row[&#39;username&#39;] === $username && $row[&#39;password&#39;] === $password){
                    $_SESSION[&#39;username&#39;] = $row[&#39;username&#39;];
                    header("Location: welcome.php");
                    exit();
                }
            }
            else{
                header("Location: index.php?error=wrong");
                exit();
            }
        }
    }
    else{
        header("Location: index.php");
        exit();
    }
?>

Im obigen Code öffnen wir zunächst eine neue Sitzung mit der Funktion session_start(). Anschließend prüfen wir, ob Benutzername und Passwort im Array $_POST vorhanden sind. Sofern vorhanden, importieren wir die Datenbankverbindungsvariablen aus der Datei db_connection.php, da wir die Benutzerdaten aus der Datenbank abrufen müssen. Anschließend überprüfen wir mit einer if-Anweisung, ob das eingegebene Feld leer ist. Wenn leer, wird der Benutzer zur ursprünglichen Formularseite weitergeleitet und der Fehlercode in die URL eingefügt.

Wenn das Eingabefeld nicht leer ist, können wir den Datensatz für diesen Benutzer in der Datenbank abrufen. Wenn wir einen Datensatz mit einem passenden Benutzernamen und Passwort erhalten, können wir den Benutzernamen in $_SESSION speichern und die Funktion header() verwenden, um den Benutzer auf die Seite „welcome.php“ umzuleiten. Wenn in der Datenbank kein solcher Eintrag vorhanden ist, leiten wir den Benutzer zur ursprünglichen Formularseite weiter und fügen den Fehlercode in die URL ein.

3. Erstellen Sie eine Willkommensseite

Abschließend müssen wir eine Willkommensseite erstellen, zu der der Benutzer nach erfolgreicher Anmeldung weitergeleitet wird. Auf der Willkommensseite kann lediglich eine Willkommensnachricht und eine Schaltfläche angezeigt werden, mit der sich der Benutzer abmelden und abmelden kann.

<!DOCTYPE html>
<html>
<head>
    <title>欢迎页</title>
</head>
<body>
    <h1>欢迎</h1>
    <p>您已经成功登陆, <?php echo $_SESSION[&#39;username&#39;]; ?>!</p>
    <a href="logout.php">注销</a>
</body>
</html>

Auf der Willkommensseite verwenden wir den $_SESSION-Mechanismus von PHP, um den aktuellen Benutzernamen anzuzeigen. Wir haben der Seite auch einen Link hinzugefügt, der die Abmeldefunktion über die Datei logout.php der Seite implementiert.

4. Implementieren Sie die Abmeldefunktion

Schließlich müssen wir PHP verwenden, um die Datei logout.php zu schreiben, um die Abmeldefunktion zu implementieren.

<?php
    session_start();
    session_unset();
    session_destroy();
    header("Location: index.php");
    exit();
?>

In der Datei logout.php starten wir zunächst die Sitzung mit der Funktion session_start(). Wir verwenden die Funktionen session_unset() und session_destroy(), um alle Sitzungsdaten zu löschen und den Benutzer zurück zur Startseite umzuleiten. Dadurch wird der Benutzer abgemeldet, nachdem er auf den Link „Abmelden“ geklickt hat.

Zusammenfassung

In diesem Artikel haben wir vorgestellt, wie man mit PHP ein einfaches System schreibt, das einen erfolgreichen Login-Sprung erreicht. Durch die Verwendung von PHP und MySQL können Sie den Benutzernamen und das Passwort beim Absenden des Formulars überprüfen, den Benutzer nach erfolgreicher Überprüfung auf eine andere Seite umleiten und den Benutzer bei einem Fehler zur ursprünglichen Formularseite zurückbringen. Wir haben auch erläutert, wie der aktuell angemeldete Benutzername auf der Begrüßungsseite angezeigt und die Abmeldefunktion in der Datei logout.php hinzugefügt wird. Dabei handelt es sich um ein einfaches, aber funktionelles System zur Umleitung erfolgreicher Anmeldungen, das Besuchern ein gutes Benutzererlebnis auf Ihrer Website bieten kann.

Das obige ist der detaillierte Inhalt vonSo schreiben Sie mit PHP einen erfolgreichen Login-Sprung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn