ONPHPID

  • How To
  • Tutorial Bootstrap
  • Tutorial Laravel
  • Tutorial WordPress
Menu
  • How To
  • Tutorial Bootstrap
  • Tutorial Laravel
  • Tutorial WordPress
Forum

Share

Reply

  • 15

Cara Membuat Website Bagian Halaman Login

June 12, 2015 2 min read

Cara Membuat Website Bagian Halaman Login Kembali lagi di tutorial php tentang cara membuat website bagian ke 4, yaitu membuat halaman login website dan halaman admin website. Dan sebelum lebih jauh onphpid sampaikan terlebih dahulu bahwa tutorial cara membuat website ini sederhana jadi besar kemungkinan banyak bug dimana-mana sehingga onphpid mengajak kalian untuk mengingatkan apabila terdapat error ataupun salah dalam tutorial membuat website ini.

Requirement system masih sama dengan sebelum yakni menggunakan XAMPP Version: 5.6.3

Bagi Kalian yang belum membaca bagain ke 3 silahkan baca cara membuat website bagian Struktur Direktori Website

Pada tutorial php yang lalu onphpid telah menulis tutorial membuat form login multiuser dan form login sederhana yang mungkin bisa membah referensi dalam membuat website baik mengikuti tutorial ini atau tutorial dari website lain. dan baca juga cara Mempercantik halaman login dengan bootstrap.

Sebelum kita memulai cara membuat website bagian halaman login  untuk website kita pertama tambahkan data admin terlebih dahulu dalam database di table ‘users’ :

Username : admin

Password : c0e024d9200b5705bc4804722636378a

Level_user : admin

Jika belum membuat database kalian bisa melihatnya ditutorial cara membuat website bagian merancang database.

Setelah melakukan insert data di atas kita akan membuat beberapa file.php di folder admin berikut file-file.php nya :

admin-loader.php

Kurang lebih isi dari admin-loader.php ini sama dengan loader.php pada direktori main, file itulah yang menopang sekaligus memanggil file.php yang dibutuhkan.

Berikut skripnya :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?php
// hindari akses langsung ke file ini
if (!defined('ACCESS')) {
    die('System Cannot Running');
}
 
// memulai session
session_start();
 
if (!file_exists('./../config.php')) {
    die('File config.php Tidak ada');
}
 
// menyisipkan file config
require './../config.php';
 
// menyisipkan file functions.php
require ABSPATH . 'functions.php';
 
// logout function
if (isset($_GET['logout']) && $_GET['logout'] == 'true') {
    session_destroy();
    header('location:'.$domain.'admin/login.php');
    exit();
}
 
/**
* Definisi direktori
*/
define('ADMIN', ABSPATH . 'admin/');
define('TPL', ABSPATH . 'template/');
 
// koneksi ke database dengan mysqli
$db = new mysqli($dbhost,$dbuser,$dbpass,$dbname);
 
// cek koneksi, jika terjadi maka sistem akan dihentikan.
if ($db->connect_error) {
    die($db->connect_error);
}
?>

categories.php

file ini adalah halaman untuk memanagement category  dalam website yang kita buat. baik untuk menambah, menghapus atau merubah suatu kategori.

Sementara skripnya sebagai berikut :

1
2
3
4
5
6
7
<?php
require 'header.php'; ?>
<h1>Hallo <?=$_SESSION['user_login'];?></h1>
<p>Halaman Categories</p>
<?php require 'sidebar.php';?>
 
<?php require 'footer.php';?>

check-login.php

check-login.php adalah file yang bertanggung jawab untuk memvalidasi username dan password user yang hendak login ke dalam halaman admin dari website kita.

Berikut skripnya :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<?php
define('ACCESS','OPEN');
require 'admin-loader.php';
 
// Check Aksi Login
if (isset($_POST['username']) && isset($_POST['password'])) {
    
    // pengamanan dari percobaan hacking
    $username = $db->escape_string($_POST['username']);
    $password = $db->escape_string($_POST['password']);
    
    // hasing with md5
    $password = md5($password .md5($password));
    // exit();
    $sql = "SELECT
                username,
                level_user
            FROM
                users
            WHERE
                (email='$username' OR username='$username')
            AND
                password='$password'
            LIMIT 1";
    $query = $db->query($sql);
 
    if (!$query) {
        die($db->error);
    }
    if ($query->num_rows == 1) {
        $result = $query->fetch_assoc();
        
        //session register
        $_SESSION['user_login'] = $result['username'];
        $_SESSION['level_user'] = $result['level_user'];
 
        header('location:'.$domain.'admin/dashboard.php');
    } else {
        header('location:'.$domain.'admin/login.php?error=salah');
    }
} else {
    header('location:'.$domain.'admin/login.php');
}
?>

Pada SQL terdapat (email=’$username’ OR username=’$username’), kode tersebut dimaksudkan agar user bisa login dengan username atau email nya.

*revisi pada tutorial php tentang cara membuat website, isi file functions.php belum ditambahkan

functions.php

file yang berisi sekumpulan fungsi yang bertujuan untuk memudahkan kita, dalam kasus form login ini kita akan membuat fungsi is_login() untuk mengetahui user sudah login atau belum dan is_admin() untuk mengecheck dia admin atau bukan. berikut kodenya :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<?php
/**
* Kumpulan Fungsi
*/
 
$domain = trim($domain, '/') . '/';
 
/**
* is_login() untuk mengecheck apakah user sudah login atau belum
* @return boolean [true | false]
*/
function is_login()
{
    if (isset($_SESSION['user_login'])) {
        return true;
    }
 
    return false;
}
 
/**
* [is_admin Check Apakah Admin Tau Bukan]
* @return boolean [true | false]
*/
function is_admin()
{
    if (isset($_SESSION['level_user']) &&
        $_SESSION['level_user'] == 'admin'
        ) {
        return true;
    }
 
    return false;
}

 

comments.php

file ini adalah halaman yang akan kita gunakan untuk memanagement komentar yang masuk kedalam website kita.

Sementara skrip php sebagai berikut :

1
2
3
4
5
6
7
<?php
require 'header.php'; ?>
<h1>Hallo <?=$_SESSION['user_login'];?></h1>
<p>Halaman Komentar</p>
<?php require 'sidebar.php';?>
 
<?php require 'footer.php';?>

dashboard.php

adalah halaman short-cut untuk menampilkan potongan informasi dari keseluruhan menu yang tertanam dalam website yang kita buat. sementara kodenya sebagai berikut :

1
2
3
4
5
6
7
<?php
require 'header.php'; ?>
<h1>Hallo <?=$_SESSION['user_login'];?></h1>
 
<?php require 'sidebar.php';?>
 
<?php require 'footer.php';?>

footer.php

footer adalah bagian dari template halaman admin website.

1
2
3
4
5
6
7
<?php
// hindari akses langsung ke file ini
if (!defined('ACCESS')) {
    die('System Cannot Running');
}?>
 
<p>&copy; <?=date('Y');?></p>

header.php

header.php adalah bagian dari template halaman admin dari website seperti footer.php

1
2
3
4
5
6
7
8
9
10
11
12
<?php
// hindari akses langsung ke file ini
define('ACCESS','OPEN');
require 'admin-loader.php';
// is_login dapat dilihat di file functions.php
// retrun bool (true|false)
if (!is_login() && !is_admin()) {
    header('location:login.php');
    exit();
}
?>
<title>Halaman Administrator</title>

index.php

index.php adalah file yang pertama kali di akses ketika halaman admin dibuka dan user akan diarahkan kehalaman dashboard.php terlebih dahulu, berikut skrip phpnya :

1
2
3
4
5
6
7
8
9
10
11
12
<?php
 
// definisi variable constant "ACCESS" untuk hindari akses langsung
// pada file file tertentu.
define('ACCESS','OPEN');
 
// file admin-loader.php
if (!file_exists(dirname(__FILE__).'/admin-loader.php')) { die('File admin-loader Tidak ada'); }
    // sisipkan file loader.php
   header('location:dashboard.php');
   exit();
?>

login.php

login.php adalah halaman login yang akan muncul bila user mengakses halaman admin dalam keadaan belum login atau setelah user logout.

Berikut skripnya :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<!DOCTYPE html>
<html>
<head>
    <title>Halaman Login</title>
    <link rel="stylesheet" href="">
</head>
<body>
    <?php if (isset($_GET['error']) && $_GET['error'] == 'salah') {
        echo "Username dan Password tidak ditemukan";
    }?>
    <form action="check-login.php" method="post">
        <input type="text" name="username" />
        <input type="password" name="password" />
        <button>Login</button>
    </form>
    
    <a href="./../">Halaman Depan</a>
</body>
</html>

posts.php

posts.php adalah halaman untuk memanagement posting seperti tambah, hapus, edit dan mengaitkan dengan category.

Berikut skrip phpnya :

1
2
3
4
5
6
7
<?php
require 'header.php'; ?>
<h1>Hallo <?=$_SESSION['user_login'];?></h1>
<p>Halaman Posting</p>
<?php require 'sidebar.php';?>
 
<?php require 'footer.php';?>

sidebar.php

sidebar.php adalah potongan template halaman admin yang berisi menu navigasi ke tiap halaman, berikut kodenya :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
// hindari akses langsung ke file ini
if (!defined('ACCESS')) {
    die('System Cannot Running');
}
?>
<ul>
    <li><a href="<?=$domain.'admin/dashboard.php';?>">Dashboard</a></li>
    <li><a href="<?=$domain.'admin/posts.php';?>">Posting</a></li>
    <li><a href="<?=$domain.'admin/categories.php';?>">Categories</a></li>
    <li><a href="<?=$domain.'admin/comments.php';?>">Comments</a></li>
    <li><a href="<?=$domain.'admin/users.php';?>">Users</a></li>
    <li><a href="<?=$domain.'admin/?logout=true';?>">Logout</a></li>
</ul>

users.php

users.php adalah halaman untuk memanagement users, dan berikut skripnya :

1
2
3
4
5
6
7
<?php
require 'header.php'; ?>
<h1>Hallo <?=$_SESSION['user_login'];?></h1>
<p>Halaman Users</p>
<?php require 'sidebar.php';?>
 
<?php require 'footer.php';?>

Hingga hasil akhir direktori admin akan nampak sebagai berikut.

cara membuat website halaman login

Dan untuk menguji silahkan buka localhost/website/admin

Jika muncul halaman login gunakan user : admin dan password: admin

Perlu diketahui header.php, footer.php dan sidebar.php adalah bagian template yang nantinya akan digabungkan dengan file dashboard.php, posts.php, comments.php, categories.php, users.php sehingga menjadi satu template yang utuh. Sedangkan login.php adalah file yang berdiri sendiri. Pada tutorial membuat website ini jika dibilang tamplinya masih jelek sekali karena belum melibatkan css dan js sebagai alat mempercantik website.

Sekian dulu tutorial php Cara Membuat Website Bagian Halaman Login dan nantikan tutorial berikutnya cara membuat webiste sendiri bagian mempercantik halaman login.

Jangan lupa untuk Like FP onphpid untuk mendapatkan informasi terbaru dari onphpid.com dan silahkan tinggalkan komentar apabila ada pertanyaan. terimakasih

  • How To
  • #Cara Membuat Website
  • #Login System
  • #PHP
  • #Tutorial
« Cara Membuat Website | Struktur Direktori
Mempercantik Halaman Login dengan Bootstrap »

Advertisement

Belajar Laravel Lebih Mudah Dengan Ebook Fullstack Developer
Baca Selengkapnya

Popular Posts

  • belajar bootstrap login Membuat Form login dengan bootstrap dan PHP under How To
  • Menampilkan Data Berdasarkan Dropdown Select Pada PHP MySQL under How To
  • belajar bootstrap untuk membuat template website Belajar Membuat Template Web Menggunakan Bootstrap under How To
  • cara menggunkan datatables Menangani Jumlah Data yang Besar pada datatables under How To
  • form register Membuat Form Registrasi dengan Bootstrap dan PHP under How To
  • laravel multi auth Membuat Level Akses User di Laravel 5.5 under Belajar Laravel
  • php oop tutorial php object oriented tutorial php class constructor php class variable php class extends php class example php class abstract php class interface php class implements Tutorial PHP Object Oriented Programming (OOP) Untuk Pemula under PHP OOP Tutorial
  • Cara Mencetak Data Langsung ke Printer Dot Matrix pada Laravel PHP under Belajar Laravel
  • belajar wordpress,belajar wordpress pemula, belajar menggunakan wordpress, belajar developer wordpress Belajar Menjadi Developer WordPress under Belajar WordPress
  • Membuat data statistik pengunjung website dengan php under How To

Recent Posts

  • Membuat Web API Sederhana Untuk Kode Pos & Kota
  • Membaca & Mengatasi Error Pada Aplikasi PHP
  • Membuat Aplikasi Polling Sederhana dengan PHP MySQLi
  • PHP OOP: Abstract dan Interface
  • PHP Object Oriented Programming : Class Extends
DMCA.com Protection Status

Advertisement

Belajar Laravel Lebih Mudah Dengan Ebook Fullstack Developer
Baca Selengkapnya

Membuat Web API Sederhana Untuk Kode Pos & Kota

Avatar nawa
Mar 31, 2019 3 min read

Membaca & Mengatasi Error Pada Aplikasi PHP

Avatar nawa
Mar 30, 2019 4 min read

Membuat Aplikasi Polling Sederhana dengan PHP MySQLi

Avatar ONPHPID
Feb 9, 2019 1 min read

ONPHPID Tutorial

  • About Us
  • Disclaimer
  • Privacy Policy
  • Crontab Generator
Menu
  • About Us
  • Disclaimer
  • Privacy Policy
  • Crontab Generator
Facebook
Instagram
Youtube