Langsung ke konten utama

Belajar PHP MySql - Membuat Login User

Belajar Membuat Login dengan PHP MySql

Login adalah sebuah sistem yang memvalidasi akun seseorang tersebut apakah dia termasuk pengguna yang boleh masuk atau bukan. Biasanya login di gunakan untuk website yang bersifat privat seperti blog, atau Sistem Informasi yang khusus dapat di akses oleh si pengguna yang berhak saja.

Kali ini saya akan memberikan toturial tentang cara membuat login di php, dan kita akan membahas diantaranya tentang :
  • Konsep Login
  • Belajar Login tanpa session
  • Belajar Login dengan session
Baiklah, kita akan membahasnya satu-persatu toturial seperti yang kita sebutkan di atas :

1. Konsep Login

Konsep login ini sendiri menggunakan pencarian dalam SQL yaitu WHERE. Biasanya Login ini gabungan dari user dan password maka konsep pencariannya menggunakan AND. AND ini sendiri akan mencari 2 field dalam tabel tersebut secara bersamaan jika ada 1 field yang sesuai tetapi field yang kedua tidak maka proses tidak bisa dilaksanakan. Sebagai contoh berikut :


Contoh SQL Login
SELECT * FROM `siswa` WHERE `nama`='Andi' AND `kelas`='XXI'


Dari konsep di atas kita anggap saja `nama` adalah user dan `kelas` adalah password jika salah satunya tidak ada dalam tabel `siswa` maka data tidak akan muncul di dalam sistem.

Sekarang kita coba buat tabel yang khusus menyediakan untuk login, buka database `pemulabelajar` yang sebelumnya kita buat, masuk ke tab SQL dan copy paste perintah berikut :

Tambah TABEL dengan SQL
CREATE TABLE `user` (`username` VARCHAR(20) PRIMARY KEY, `sandi` VARCHAR(20))

Dari perintah di atas maka kita sudah memiliki tabel dengan nama `user` dengan attribute `username` dan `sandi`. Setelah kita membuat tabel di atas maka contoh SQL loginnya akan seperti berikut :

Contoh SQL Login
SELECT * FROM `user` WHERE `username`='nama user' AND `sandi`='password user'


Untuk mengisi tabel `user` tersebut silahkan anda baca Cara Input Data di PHP MySQl di artikel sebelumnya.

2. Login Tanpa Session

Login tanpa session ini bersifat tanpa ada perbedaan akses, maksudnya adalah login hanya di peruntukkan untuk user ataupun admin saja bahasa kerennya loginnya satu-satu. Setelah mempelajari konsep login di atas tentu Anda sudah mengerti SQL loginnya dan sekarang tinggal menerapkannya pada PHP.

a. Buat File Login.php

Sekarang coba anda buat file dengan nama login.php dan copy skript HTML di bawah ini untuk membuat sebuah form untuk user.

Script form login.php
<!DOCTYPE html>
<html lang="en">
  <head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>Form Login - Study-newbie.blogspot.com</title>
</head>
<body>
<p>Form Login User</p>
<form method="post">
  <p>username :</p>
  <input name="user" type="text" />
  <p>password :</p>
  <input name="sandi" type="password" /><br/>
  <button type="submit" name="login">Login</button>
</form>

</body>
</html> 

Setelah membuat form HTML untuk user tersebut sekarang kita coba membuat script login sederhana. Copy script berikut dan letakkan di atas kode <!DOCTYPE html> :
Script PHP login.php
<?php

$dbhost = 'localhost';
$dbuser = 'root';
$dbpassword = '';
$dbname = 'pemulabelajar';
$koneksi = mysql_connect($dbhost,$dbuser,$dbpassword);
mysql_select_db($dbname,$koneksi);

if (isset($_POST['login'])) {
  $user = $_POST['user'];
  $sandi = $_POST['sandi'];
  $login=mysql_query("SELECT * FROM `user` WHERE `username`='$user' AND `sandi`='$sandi'");
  if(mysql_num_rows($login)=='0'){
    echo "Username dan Kata Sandi anda tidak cocok";
  } else {
    header('location: login_berhasil.php');
  }
}

?>

b. Buat File login_berhasil.php

Dan sekarang coba buat file dengan nama `login_berhasil.php` yang mana file ini akan menjadi tujuan login kita jika login valid.
Setelah membuat file dengan nama `login_berhasil.php` sekarang tulis seperti script di bawah ini di dalam file `login_berhasil.php` tersebut :
Script file login_berhasil.php
<!DOCTYPE html>
<html lang="en">
  <head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>Login Sukses - Study-newbie.blogspot.com</title>
</head>
<body>
<h3>Selamat datang di menu user</h3>
<p>Jika menu ini muncul maka Anda telah berhasil login.</p>
</body>
</html> 

Semoga pembahasan Cara Membuat Login di PHP ini dapat membantu anda dalam mengembangkan website PHP anda.

3. Login Dengan Session

Login dengan session ini artinya kita membuat login user dan admin di php tanpa harus membuat login masing-masing user tersebut atau memisah login tersebut. Login dengan session ini berarti kita membuat sebuah form login yang di peruntukan untuk beberapa level user misalnya : user biasa ataupun Admin. Sebelum melanjutkan toturial Membuat Login Session di PHP, kita akan menambah attribute `level` pada tabel `user` sebelumnya.
Copy script di bawah ini dan pastekan di tab SQL sama seperti pada pembahasan di atas.
Tambah TABEL dengan SQL
DROP TABLE `user`;
CREATE TABLE `user` (`username` VARCHAR(20) PRIMARY KEY, `sandi` VARCHAR(20), `level` VARCHAR(20));

Setelah pembuatan tabel `user` di atas, maka kita sekarang memasukkan data dengan SQL. Langkahnya anda klik tabel `user` lalu masuk ke tab SQL dan copy paste script dibawah. Jika Anda ingin memasukkan data dengan PHP anda bisa baca tutorial Cara Memasukkan Data dengan PHP MySql.
Tambah TABEL dengan SQL
INSERT INTO `user`(`username`, `sandi`, `level`) VALUES ('Andi','pas123','Admin'); INSERT INTO `user`(`username`, `sandi`, `level`) VALUES ('Pemula','123pas','User');

Dari SQL di atas maka kita sudah memiliki data Andi Sebagai Admin dan Pemula Sebagai User. Sekarang kita coba Cara Login Session di PHP dengan berbekal dari 2 tutorial di atas.

a. Edit File login.php

Anda Hapus semua script php yang ada di login.php sebelumnya yaitu dari kode <?php sampai kode ?>, dan pastekan script PHP di bawah ini :
Script PHP login.php
<?php
session_start();


$dbhost = 'localhost';
$dbuser = 'root';
$dbpassword = '';
$dbname = 'pemulabelajar';
$koneksi = mysql_connect($dbhost,$dbuser,$dbpassword);
mysql_select_db($dbname,$koneksi);

if (isset($_POST['login'])) {
  $user = $_POST['user'];
  $sandi = $_POST['sandi'];
  $login=mysql_query("SELECT * FROM `user` WHERE `username`='$user' AND `sandi`='$sandi'");
  if(mysql_num_rows($login)=='0'){
    echo "Username dan Kata Sandi anda tidak cocok";
  } else {
    while ($data=mysql_fetch_array($login)) {
      $_SESSION['level']=$data[2];
    }
    header('location: login_berhasil.php');
  }
}

?>

b. Hapus Script Login_berhasil.php

Dan hapus semua script yang ada pada login_berhasil.php dan copy paste script di bawah ini untuk menindetifikasi bahwa di Admin dan User.
Script PHP login_berhasil.php
<?php
session_start();
$dbhost = 'localhost';
$dbuser = 'root';
$dbpassword = '';
$dbname = 'pemulabelajar';
$koneksi = mysql_connect($dbhost,$dbuser,$dbpassword);
mysql_select_db($dbname,$koneksi);

$level=$_SESSION['level'];
?>
<!DOCTYPE html>
<html lang="en">
  <head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>Login Sukses - Study-newbie.blogspot.com</title>
</head>
<body>
<h3>Selamat datang di Sistem</h3>
<?php
if ($level == 'Admin') {
  echo '<p>Hai, Anda telah mengakses menu Admin.</p>';
} else {
  echo '<p>Hai, Anda telah mengakses menu User.</p><a href="keluar.php">Keluar</a>';
}
?>
</body>
</html> 

Dan lihat perbedaan dari masing-masing Andi dan Pemula di bagian menu file login_berhasil.php. Session tersebut akan aktif selama kita berada di website localhost/study-newbie kita itu. Anda dapat membuat logout dengan script session_destroy(); di php tersebut, atau anda bisa melihat script di bawah untuk Cara Logout di PHP :
Kode Logout
<?php
session_destroy();
    header('location:index.php');
?>
Dari script di atas logout kita akan membuat session kita berakhir dan akan menuju langsung ke index.php kita sebelumnya, jika Anda ingin mencari Cara membuat Validasi di PHP akan saya berikan toturial berikutnya :).

Terima kasih telah membaca Artikel Belajar Membuat Login dengan PHP MySql, semoga bermanfaat dan jangan lupa share ke teman-teman kita. Terima Kasih :).

Komentar

  1. Wah saya baca ini malah jadi pusing mas. Saya tidak ngerti kode kode seperti itu :)

    BalasHapus
    Balasan
    1. Mungkin penjelasan saya yg bikin pusing ya mas.. Haha =D

      Hapus

Posting Komentar

Komentar dan Kritik kawan diperlukan agar dapat membangun pemula belajar kedepannya. Terima Kasih

Postingan populer dari blog ini

Tutorial Lengkap Membuat Short Link Sendiri Dengan PHP Mysql

Hallo kawan, berjumpa lagi nih sama toturial www.pemulabelajar.com. Kali ini kita akan membahas cara membuat short link sendiri . Pernah dong kawan menjumpai namanya short link, contoh sederhananya saja goo.gl . goo.gl akan membuat url site kita menjadi lebih pendek misalnya saja : http://www.pemulabelajar.com bisa menjadi goo.gl/Jiahs . Begitu juga tutorial kita membuat short link kali ini. Karena membuat short link kita sekarang menggunakan PHP Mysql maka kawan disarankan untuk membuat hosting untuk website yang akan dijadikan website short link kita sendiri, kawan bisa menggunakan layanan gratis seperti 000webhosting.com atapun idhostinger.com (recomended) selain gratis, pembuatan databasenya juga termasuk mudah dan juga tutorialnya sangat banyak digoogle kalau ada waktu saya akan membuatkan tutorial membuat hosting gratis untuk kawan. Membuat Short Link Saya anggap saja kawan sudah membuat hosting disalah satu tempat hosting diatas. Maka langkah a...

Belajar Power Design - Cara Membuat Project Menjadi Gambar

Cara Membuat Project Menjadi Gambar - Artikel ini akan membahas sedikit tentang Power Design dan Bagaimana merubah project power design menjadi sebuah gambar . Masalah ini sering dialami oleh pemula khususnya saya yang bingung bagaimana merubah sebuah project power design menjadi berupa gambar agar mudah dimuat ke sebuah karya tulis. Baca juga : Membuat Teks Rotasi Dengan Photoshop Apa itu Power Design ? Power design adalah sebuah paket program desain tools yang digunakan untuk membuat Visualisasi, dokumentasi dan mendesain suatu sistem perangkat lunak. Paket ini meliputi Process analyst Model (PAM), Data architect tools, Aplication modeler tools, dan Metawork tools. Power Design ini juga sering digunakan menjadi software untuk membuat Diagram Flow Diagram atau DFD . Bagaimana Merubah Project Menjadi Gambar ? Untuk merubah sebuah project pada power design menjadi sebuah gambar cukup mudah. Secara singkatnya kawan cukup memilih semua object yang akan dijadikan sebuah gambar, s...

Belajar Web - Membuat Website Responsive CSS

Sebelum kita meneruskan tutorial selanjutnya yaitu Belajar Membuat Website Responsive baiknya kita pelajari terlebuh dahulu apa aja yang akan kita bahas. Karena yang akan kita bahas selanjutnya adalah responsive web, maka diwajibkan mengerti fungsi script css yang ada di Belajar Desajn Website di html / php toturial sebelumnya. Apa itu float ? Apa itu width ? Apa itu height ? Apa itu clear: both ? Responsive ini memakai @media(max-width) atau @media(min-width) yang memiliki arti lebar maximal style dan lebar minimal yang kita masukkan di dalam @media tersebut. Sebelum memperlajari responsive menu sebaiknya lita pelajari dulu float, clear dan lain-lain. Karena @media tersebut hanya mengganti script css dari css global. Apa itu css global ? Nanti anda penjelasannya masing-masing. Apakah anda sudah ngerti dengan coding css diatas ? Jika belum, ada baiknya anda harus pelajari dulu scriptnya di toturial sebelumnya. Cara memperbaiki jika terjadi error atau kesalahan penulidan pada d...