赞
踩
index.html
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8">
- <title>Login</title>
- <link href="style.css" rel="stylesheet" type="text/css">
- </head>
- <body>
- <div class="login">
- <h1>Login</h1>
- <br>
- <form action="authenticate.php" method="post" class="form1">
- <div class="input-wrapper">
- <div class="border-wrapper">
- <input type="text" name="username" placeholder="username" class="border-item" autocomplete="off">
- </div>
- <div class="border-wrapper">
- <input type="password" name="password" placeholder="password" class="border-item" autocomplete="off">
- </div>
- </div>
- <div class="action">
- <div class="btn">
- <button type="submit" class="submit1">login</button>
- </div>
- </div>
- </form>
- </div>
- </body>
- </html>
-
style.css
-
- * {
- margin: 0;
- padding: 0;
- }
-
- html {
- height: 100%;
- }
-
- body {
- height: 100%;
- font-family: JetBrains Mono Medium;
- display: flex;
- align-items: center;
- justify-content: center;
- /* background-color: #0e92b3; */
- background: url('background.png') no-repeat;
- background-size: 100% 100%;
- }
-
- .login {
- width: 300px;
- background-color: rgba(41, 45, 62, .8);
- color: #fff;
- border-radius: 2px;
- padding: 50px;
- }
-
- h1 {
- text-align: center;
- font-size: 30px;
- text-transform: capitalize;
- }
-
- .login .input-wrapper input {
- background-color: rgb(41, 45, 62);
- border: 0;
- width: 100%;
- text-align: center;
- font-size: 10px;
- color: #fff;
- outline: none;
- }
-
- .login .input-wrapper input::placeholder {
- text-transform: capitalize;
- }
-
- .login .input-wrapper .border-wrapper {
- background-image: linear-gradient(to right, #e8198b, #0eb4dd);
- width: 100%;
- height: 50px;
- margin-bottom: 20px;
- border-radius: 30px;
- display: flex;
- align-items: center;
- justify-content: center;
- }
-
- .login .input-wrapper .border-wrapper .border-item {
- height: calc(100% - 4px);
- width: calc(100% - 4px);
- border-radius: 30px;
- }
-
- button {
- width: 100%;
- text-transform: capitalize;
- border: 2px solid #0e92b3;
- text-align: center;
- line-height: 50px;
- border-radius: 30px;
- cursor: pointer;
- background-color: rgb(41, 45, 62);
- color: #fff;
- font-size: 20px;
- }
authenticate.php
- <?php
-
- session_start();
- $DATABASE_HOST = 'localhost';
- $DATABASE_USER = 'root';
- $DATABASE_PASS = '';
- $DATABASE_NAME = 'phplogin';
- $con = mysqli_connect($DATABASE_HOST, $DATABASE_USER, $DATABASE_PASS, $DATABASE_NAME);
-
- if (!$con) {
- die("connection is failed this database due to" . mysqli_connect_error());
- }
- else{
- printf('Connected successfully.<br/>');
- }
-
-
- // Now we check if the data from the login form was submitted, isset() will check if the data exists.
- if ( !isset($_POST['username'], $_POST['password']) ) {
- // Could not get the data that should have been sent.
- exit('Please fill both the username and password fields!');
- }
-
- // Prepare our SQL, preparing the SQL statement will prevent SQL injection.
- if ($stmt = $con->prepare('SELECT id,password FROM accounts WHERE username = ?')) {
- // Bind parameters (s = string, i = int, b = blob, etc), in our case the username is a string so we use "s"
- $stmt->bind_param('s', $_POST['username']);
- $stmt->execute();
- // Store the result so we can check if the account exists in the database.
- $stmt->store_result();
-
- if ($stmt->num_rows > 0) {
- $stmt->bind_result($id, $password);
- $stmt->fetch();
- // Account exists, now we verify the password.
- // Note: remember to use password_hash in your registration file to store the hashed passwords.
- if($_POST['password'] === $password) {
- // Verification success! User has logged-in!
- // Create sessions, so we know the user is logged in, they basically act like cookies but remember the data on the server.
- session_regenerate_id();
- $_SESSION['loggedin'] = TRUE;
- $_SESSION['name'] = $_POST['username'];
- $_SESSION['id'] = $id;
- header('Location: home.php');
- } else {
- // Incorrect password
- echo 'Incorrect username and/or password!';
- }
- } else {
- // Incorrect username
- echo 'Incorrect username and/or password!';
- }
-
- $stmt->close();
- }
-
- ?>
-
home.php
- <?php
- session_start();
- // We need to use sessions, so you should always start sessions using the below code.
- $DATABASE_HOST = 'localhost';
- $DATABASE_USER = 'root';
- $DATABASE_PASS = '';
- $DATABASE_NAME = 'phplogin';
- $con = mysqli_connect($DATABASE_HOST, $DATABASE_USER, $DATABASE_PASS, $DATABASE_NAME);
- // If the user is not logged in redirect to the login page...
- if (!isset($_SESSION['loggedin'])) {
- header('Location: index.html');
- exit;
- }
- ?>
-
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8">
- <title>Home Page</title>
- </head>
- <body class="loggedin">
- <nav class="navtop">
- <div>
- <h1>Website Title</h1>
- <a href="profile.php"><i class="fas fa-user-circle"></i>Profile</a>
- <a href="logout.php"><i class="fas fa-sign-out-alt"></i>Logout</a>
- </div>
- </nav>
- <div class="content">
- <h2>Home Page</h2>
- <p>Welcome back, <?=$_SESSION['name']?>!</p>
- </div>
- </body>
- </html>
profile.php
- <?php
- session_start();
- // We need to use sessions, so you should always start sessions using the below code.
- $DATABASE_HOST = 'localhost';
- $DATABASE_USER = 'root';
- $DATABASE_PASS = '';
- $DATABASE_NAME = 'phplogin';
- $con = mysqli_connect($DATABASE_HOST, $DATABASE_USER, $DATABASE_PASS, $DATABASE_NAME);
- // If the user is not logged in redirect to the login page...
- if (!isset($_SESSION['loggedin'])) {
- header('Location: index.html');
- exit;
- }
- $DATABASE_HOST = 'localhost';
- $DATABASE_USER = 'root';
- $DATABASE_PASS = '';
- $DATABASE_NAME = 'phplogin';
- $con = mysqli_connect($DATABASE_HOST, $DATABASE_USER, $DATABASE_PASS, $DATABASE_NAME);
- if (mysqli_connect_errno()) {
- exit('Failed to connect to MySQL: ' . mysqli_connect_error());
- }
- // We don't have the password or email info stored in sessions so instead we can get the results from the database.
- $stmt = $con->prepare('SELECT password, email FROM accounts WHERE id = ?');
- // In this case we can use the account ID to get the account info.
- $stmt->bind_param('i', $_SESSION['id']);
- $stmt->execute();
- $stmt->bind_result($password, $email);
- $stmt->fetch();
- $stmt->close();
- ?>
-
-
-
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8">
- <title>Profile Page</title>
- <link href="style.css" rel="stylesheet" type="text/css">
- <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.7.1/css/all.css">
- </head>
- <body class="loggedin">
- <nav class="navtop">
- <div>
- <h1>Website Title</h1>
- <a href="profile.php"><i class="fas fa-user-circle"></i>Profile</a>
- <a href="logout.php"><i class="fas fa-sign-out-alt"></i>Logout</a>
- </div>
- </nav>
- <div class="content">
- <h2>Profile Page</h2>
- <div>
- <p>Your account details are below:</p>
- <table>
- <tr>
- <td>Username:</td>
- <td><?=$_SESSION['name']?></td>
- </tr>
- <tr>
- <td>Password:</td>
- <td><?=$password?></td>
- </tr>
- <tr>
- <td>Email:</td>
- <td><?=$email?></td>
- </tr>
- </table>
- </div>
- </div>
- </body>
- </html>
logout.php
- <?php
- session_start();
- $DATABASE_HOST = 'localhost';
- $DATABASE_USER = 'root';
- $DATABASE_PASS = '';
- $DATABASE_NAME = 'phplogin';
- $con = mysqli_connect($DATABASE_HOST, $DATABASE_USER, $DATABASE_PASS, $DATABASE_NAME);
- session_destroy();
- // Redirect to the login page:
- header('Location: index.html');
- ?>
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。