Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- session_start();
- // Cek sebaliknya
- // isset kalau sudah ada, kalau not isset itu kalau belum ada
- if (isset($_SESSION["login"])) { // kalau sudah login, tidak usah di tampilkan halaman loginnya
- header("Location: index.php"); // pindahkan ke index
- exit;
- }
- require 'functions.php';
- // 1. Cek apakah tombol submit sudah di tekan atau belum
- if (isset($_POST["login"])) { // kenapa post? karena formnya memakai method post dan tombolnya login
- // JIka sudah baru kita cek passwordnya
- // Menangkap data username dan password dari postnya ya
- $username = $_POST["username"];
- $password = $_POST["password"];
- // Cek Usernamenya dulu
- // cek apakah username sama dengan user yang diinputkan oleh user tadi
- $result = mysqli_query($conn, "SELECT * FROM user WHERE username = '$username'");
- // Cek ada gak username tertentu didalam tabel
- // Cek username
- if ( mysqli_num_rows($result) === 1 ) { //
- // Cek password
- $row = mysqli_fetch_assoc($result); // ambil mysqli dari result
- // jadi sekarang didalam row sudah ada isi datanya, ada ID, ada username dan ad apassword yang sudah diacak
- // Sama gak? kalau sama berarti benar
- if( password_verify($password, $row["password"] )) { // kalau berhasil di verifikasi, perbolehkan usernya masuk kedalam sistem.
- $_SESSION["login"] = true;
- // Jadi kita arahkan usernya ke index php
- header("Location: index.php");
- // Lalu gunakan exit supaya berhenti pada saat header aja ya, gak dibawa script dibawahnya
- exit;
- }
- }
- $error = true;
- }
- ?>
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <meta http-equiv="X-UA-Compatible" content="ie=edge">
- <title>Halaman login </title>
- </head>
- <body>
- <!-- Pesan kesalahan error -->
- <?php if (isset($error)) : ?> <!-- Kalau ada error, karena error akan bikin / isset ketika ada error aja, kalau tidak ada error, errornya tidak akan pernah di isset -->
- <p style="color: red;"> username atau password salah
- </p>
- <!-- jadi begitu ya, untuk menggunakan password hash dan password verify untuk registrasi dan login ini -->
- <!-- cara agar tidak bebas masuk seperti ini kita harus menggunakan SESSION -->
- <?php endif; ?>
- <h1>Halaman Login </h1>
- <form action="" method="post">
- <ul>
- <li>
- <label for="username"> Username</label>
- <input type="text" name="username" id="username">
- </li>
- <li>
- <label for="password">Password</label>
- <input type="password" name="password" id="password">
- </li>
- <li>
- <!-- typenya submit supaya datanya dikirimkan ke action -->
- <button type="submit" name="login">Login
- </button>
- </li>
- </ul>
- </form>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement