Dalam
sebuah website tentunya tidak asing lagi dengan Login ataupun Register, di
sebuah website banyak sekali sistem yang mereka pakai untuk membuat hal
tersebut, sistem Login sendiri mempunyai fungsi yang banyak, bisa di pakai
untuk Pendataan, di pakai untuk langganan, ataupun di pakai untuk keamanan.
Login
kalau dalam sistemnya hanya untuk memverifikasi apakah data yang di input sama
dengan data yang ada di database, biasanya login hanya mengunakan 2 data saja
yaitu berupa Email dan Password, jika data yang input tidak ada maka Users
tidak bisa masuk pada website tersebut. Lalu bagaimana dengan Register apa
gunanya?. Ya gunanya untuk mencantumkan / menambah data ke dalam database,
tentunya tidak ada dalam database. Kenapa ? , Jawabannya pasti agar tidak ada
data yang bertubrukan, dan juga tidak ada data duplikat, dengan begitu data
yang tersimpan di database akan ringan.
Sepertinya
sampai disana dulu penjelasanya, kita masuk pada Pemogramannya, Dalam Website
Berbagai bahasa pemograman tapi kita akan mengunakan PHP sebagai Bahasanya, Dan
Mysql Sebagai databasenya, seperti yang di atas kita akan membuat login dan
register.
1. Langkah pertama kita akan membuat sebuah database untuk nantinya
dipakai untuk menyimpan data user
2. Untuk Selanjutnya siapkan
folder projek kita.
4. Buat lah file index.php, login.php, register.php, koneksi.php, style.css
Ada dua cara untuk membuat hal tersebut, anda bisa langsung buat di Foldernya.
Atau Anda Masuk Dalam Sofware Visual Studio Code.
5. Setelah filenya sudah dibuat, kita akan berurusan dulu dengan index.php dan styles.css
Index.php
<?php
//Menghilangkan Error
error_reporting(0);
//Memulai Session Untuk Penggunaan Data Login
session_start();
?>
<!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">
<link rel="stylesheet" href="styles.css">
</head>
<body>
<div class="menu">
<ul>
<li><a href="?page">Home</a></li>
<?php
//Manampilkan Nama Data Login
if($_SESSION['nama']){
echo "<li><a>".$_SESSION['nama']."</a></li>";
}else{
?>
<li><a href="?page=login">Login</a></li>
<li><a href="?page=register">Register</a></li>
<?php }?>
</ul>
</div>
<div class="main">
<!-- Konten -->
<?php
//Koneksi Ke Database
include_once("koneksi.php");
$page = $_GET['page'];
if($page == "logout"){
//Menghapus Data Login
session_destroy();
echo '<script type="text/javascript">
window.location ="index.php"</script>';
}else if($page){
include($page.'.php');
echo "<title>$title</title>";
}else if($_SESSION['nama']){
echo "<title>Source Code Login / Register</title>";
echo "<h3>".$_SESSION['nama']."</h3> <a href='?page=logout'> LOG OUT</a><br/>";
if($_SESSION['level']==1){
echo "LEVEL : Administrator";
}else if($_SESSION['level']==2){
echo "LEVEL : Users";
}
}else{
echo "<title>Source Code Login / Register</title>";
echo "<h4>Terima Kasih Sudah Mencoba Open Source Auth Ini,<br/> Untuk Pengembangan Saya Berikan Pada Kalian.</h4><br/>";
echo "<br/><h4> Source Code Ini Berupa Fungsi Register - Login - Logout,<br/> untuk tampilan mohon maaf kurang bagus</h4>";
}
?>
</div>
<div class="footer">
<h5> Copyright © 2019 <a href="http://bisa-koding.blogspot.com">Bisa Koding</a></h5>
</div>
</body>
</html>
Styles.css
body{
margin: 0;
padding: 0;
}
.menu{
text-align: center;
}
.menu ul {
list-style-type: none;
margin: 0;
padding: 0;
overflow: hidden;
background-color: #333;
}
.menu ul li {
float: left;
}
.menu ul li a {
display: block;
color: white;
text-align: center;
padding: 14px 16px;
text-decoration: none;
}
/* Change the link color to #111 (black) on hover */
.menu ul li a:hover {
background-color: #111;
}
.main{
height: 400px;
justify-items: center;
align-items: center;
padding:10.1% 0 0px 35%;
}
.footer{
background-color: #333;
text-align: center;
padding: 5px 5px;
color: white;
font-size: 1.4 em;
}
.footer a{
color: white;
text-decoration: none;
}
.btn{
text-align: end;
}
.login-form{
text-align: end;
padding-left:5%;
}
.register-form{
text-align: end;
}
6. Setelah keduanya Selesai kita pindah pada fungsinya, kita buat koneksi databasenya ke mysql, buat file koneksi.php
<?php
$host = "localhost";
$user = "root";
$pass = "";
$database = "auth";
$conn = mysqli_connect($host, $user, $pass)or die(mysqli_error());
mysqli_select_db($conn, $database)or die(mysqli_error());
?>
7. Sesudah itu buat file Login.php
<h5>Silakan Login Dengan Data Yang Telah Di Daftarkan</h5>
<form method="post" class="login-form">
<table>
<thead>
<th>Email</th>
<td><input type="email" name="email"></td>
</thead>
<tbody>
<th>Password</th>
<td><input type="password" name="pass"></td>
</tbody>
<th></th>
<td class="btn"><button name="login"> LOGIN</button></td>
</table>
</form>
<?php
$title = "Login - Source Code";
if(isset($_POST['login'])){
//Inialisasi Kolom
$email = $_POST['email'];
$pass = md5($_POST['pass']);
if($email && $pass){
//Menyamakan Data Input Dengan Database - Inilah Fungsi Login
$data_login = mysqli_query($conn, "SELECT * FROM users WHERE email='$email' AND pass='$pass'") or die(mysql_error());
$result = mysqli_fetch_assoc($data_login);
$v_email = $result['email'];
$v_pass = $result['pass'];
//Verifikasi Email & Password
if($email == $v_email){
if($pass == $v_pass){
$_SESSION['nama'] = $result['nama'];
$_SESSION['level'] = $result['level'];
echo '<script type="text/javascript">
window.location ="index.php"</script>';
}else{
echo "Password Salah";
}
}else{
echo "Email Tidak Ditemukan";
}
}
}
?>
8.Buatlah File register.php
<h5>Silakan Register Dengan Data Yang Akan Di Daftarkan</h5>
<form method="post" class="register-form">
<table>
<thead>
<th>Nama</th>
<td><input type="text" name="nama"></td>
<th>Email</th>
<td><input type="email" name="email"></td>
</thead>
<tbody>
<th>Password</th>
<td><input type="password" name="pass"></td>
<th>Level</th>
<td><select name="level">
<option value="1">Admin</option>
<option value="2">Users</option>
</select></td>
</tbody>
<th></th>
<td class="btn"><button name="register">REGISTER</button></td>
</table>
</form>
<?php
$title = "Register - Source Code";
if(isset($_POST['register'])){
//Inisialisasi Kolom
$nama = $_POST['nama'];
$email = $_POST['email'];
//MD5 Berfungsi Merandom Password
$pass = md5($_POST['pass']);
$level = $_POST['level'];
if($nama && $email && $pass && $level){
//Verifikasi Data Yang Sama
$dt_register = mysqli_query($conn, "SELECT * FROM users")or die(mysqli_error());
$r_reg = mysqli_fetch_assoc($dt_register);
$r_email = $r_reg['email'];
if($email == $r_email){
echo"Data Sudah Digunakan";
}else{
//Menyimpan Data Ke Query / Database
$simpan = mysqli_query($conn, "INSERT INTO users (id,email,pass,nama,level) VALUES (NULL,'$email','$pass','$nama','$level')");
if($simpan){
echo "<script>window.alert('Data Berhasil Di Tambah')</script>";
echo '<script type="text/javascript">
window.location ="index.php"</script>';
}else{
echo"Data Tidak Berhasil Di Tambah";
}
}
}else{
echo"Masih Ada Kolom Yang Belum Di Isi.";
}
}
?>
9. Setelah itu selesai tinggal anda run dalam xampp.
Demikian Source code Login / Register dengan PHP semoga source code ini membantu anda.
Demo :
Bisa Koding
Link Source Code :
Google Drive || Mediafire || Github