Pemrograman Web ~ Login & Authorization

Assalamualaikum Warohmatullahi Wabarokatu

Halloo Semuanya kembali lagi dengan sayaa, Setelah beberapa minggu tidak upload karena sedang liburan , akhirnya saya dapat upload kembali artikel tentang pemrograman web . Kali ini saya akan melanjutkan kembali materi PHP sekarang akan membahas tentang Login & Authorization pada web pengolahan siswa sebelumnya.

Login 

1. Buat table t_login pada database siswa


2. Insert Data pada table

 Tambahkan data dengan enkripsi  password =  sha1 
 username  = admin 
 pasword = admin 


3. Buat Tampilan v_login.php
Contoh tampilannya 


*contoh menggunakan Boostrap

4. Source Code v_login.php 
<body>
    <div class="container mt-5 box">

        <div class="row">
            <div class="col-md-6">



                <h2>Login</h2>

                <form action="/pwpb19/praktikum30/login.php" method="POST">

                    <div class="form-group">
                        <label for="username">Username</label>
                        <input class="form-control" type="text" 
name="username" placeholder="Username" />
                    </div>


                    <div class="form-group">
                        <label for="password">Password</label>
                        <input class="form-control" type="password" 
name="password" placeholder="Password" />
                    </div>
           <button type="submit" class="btn btn-primary btn-block">Login</button>

                </form>

            </div>
        </div>
    </div>

</body>

5 Buat file login.php 

Buat file login dengan Source Code berikut:

<?php
include 'lib/library.php';

if ($_SERVER['REQUEST_METHOD'== 'POST') {
    $username = $_POST['username'];
    $password =  $_POST['password'];

    $sql = "SELECT * FROM t_login
            WHERE username= '$username
            AND password = SHA1 ('$password')";
    $data = $mysqli->query($sqlor die($mysqli->error);

    if ($data->num_rows != 0) {
        $row = mysqli_fetch_object($data);
        $_SESSION['username'= $row->username;
        $_SESSION['level'= $row->level;
        header('location: index.php');
    } else {
        $error = "Username atau password salah";
    }
}
include 'views/v_login.php';

Penjelasan : if yang pertama mengecek apakah ada request method post atau melakukan submit 
setelah itu dibuat sqlnya. pada if kedua melakukan pengecekan saat login

6.  Buat file Logout.php

Buat logout dengan menggunakan source code berikut :

<?php
session_start();
session_destroy();
header('location: index.php');

penjelasan : session_destroy digunakan untuk mengahapus session yang sudah diset

7. Authorization

adalah method untuk membuat pengecekan apakah user sudah login atau belum saat membuka web yang akan dibuat funtionnya  di library.php  Buka dan tambah kan source code berikut pada file lib/library.php :

function base_url()
{
    return "http://localhost/pwpb19/praktikum30/index.php";
}

function flash($tipe, $pesan = '')
{
    if (empty($pesan)) {
        $pesan = $_SESSION[$tipe];
        unset($_SESSION[$tipe]);
        return $pesan;
    } else {
        $_SESSION[$tipe= $pesan;
    }
}

function cekLogin()
{
    $username = @$_SESSION['username'];
    $level    = @$_SESSION['level'];

    if (empty($usernameand empty($level)) {
        header("location: login.php");
    }
}

function sudahLogin()
{
    $username = @$_SESSION['username'];
    $level    = @$_SESSION['level'];

    if (!empty($usernameand !empty($level)) {
        header("location: index.php");
    }

Penjelasan : pada source code ini dibuat function baru yaitu cekLogin() dan sudahLogin dengan mengecek melalui username dan level bila pada session tersebut terdapat username dan level maka akan terdeteksi sudahLogin bila tidak ada terdeteksi belumLogin .

Tambahkan function cekLogin() pada index.php dan function sudahLogin() pada login.php

8. Coba Login 

Cobalah untuk merefresh web apakah function berhasil atau tidak setelah itu coba login 


agar keluar tombol logout tersebut anda dapat melakukan pengecekan login pada file v_index.php seperti berikut :
<?php
        $username = @$_SESSION['username'];
        $level    = @$_SESSION['level'];
        ?>
        <?php if (!empty($usernameand !empty($level)) { ?>
            <a href="logout.php">logout</a>
        <?php } ?>

Cukup Sekian untuk materi kali ini berikutnya akan ada materi tentang upload file gambar pada table siswa , tunggu upload an berikutnya wokeeh...

Wassalamualaikum Warohmatullahi Wabarokatu

Comments

Popular Posts