Membuat halaman login
Untuk dapat membuat halaman login harus terlebih dahulu tersambung atau connect dengan database yang telah dibuat. Database yang telah dibuat dapat disambungkan dengan cara membuat file global.php. Folder-folder web.
global.php
<?php
$conn = mysqli_connect("localhost","root","","databasename");
Diperlukan sebuah logika atau function untuk bisa melakukan login, maka dibuat lah file dengan nama function.php. Pada folder ini juga harus memanggil terlebih dahulu file global.php.
<?php
include "global.php";
function.php
function query($query) {
global $conn;
$result = mysqli_query($conn, $query);
$rows = [];
while( $row = mysqli_fetch_assoc($result) ) {
$rows[] = $row;
}
return $rows;
}
function insert($data) {
global $conn;
$nama_produk = htmlspecialchars($data["nama_produk"]);
$deskripsi_produk = htmlspecialchars($data["deskripsi_produk"]);
$harga_produk = htmlspecialchars($data["harga_produk"]);
$query = "INSERT INTO produk
VALUES
('', '$nama_produk', '$deskripsi_produk', '$harga_produk')";
mysqli_query($conn, $query);
return mysqli_affected_rows($conn);
}
function delete($id){
global $conn;
mysqli_query($conn, "DELETE FROM produk WHERE id = $id");
return mysqli_affected_rows($conn);
}
function update($data) {
global $conn;
$id = $data["id"];
$nama_produk = htmlspecialchars($data["nama_produk"]);
$deskripsi_produk = htmlspecialchars($data["deskripsi_produk"]);
$harga_produk = htmlspecialchars($data["harga_produk"]);
// query insert data
$query = "UPDATE produk SET nama_produk = '$nama_produk',
deskripsi_produk = '$deskripsi_produk',
harga_produk = '$harga_produk'
WHERE id = $id
";
mysqli_query($conn, $query);
return mysqli_affected_rows($conn);
}
?>
Nahh udah semua nih tentang logikanya, sekarang bagian nya untuk tampilan halaman login, template halaman login dapat di cari di google ya kalau ingin yang berbeda.
Berikut adalah logika dari file login.php
<?php
// Koneksi ke database
include "template/config/global.php";
if (isset($_SESSION['role'])) {
header("location: dashboard.php");
exit;
}
// logika Login
if (isset($_POST['login'])) {
// melakukan definisi variabel
$username = $_POST['username'];
$password = $_POST['password'];
$login = mysqli_query($conn,"SELECT * FROM pelanggan WHERE username='$username' AND PASSWORD='$password'");
// menghitung jumlah data yang ditemukan
$cek = mysqli_num_rows($login);
// cek apakah username dan password di temukan pada database
if($cek > 0){
$data = mysqli_fetch_assoc($login);
// cek jika user login sebagai admin
if($data['role']=="admin"){
echo "<script>alert('login anda telah berhasil, admin'); window.location.href='homeadmin.php'</script>";
// buat session login dan username
$_SESSION['username'] = $username;
$_SESSION['role'] = "admin";
// cek jika user login sebagai pelanggan
} else if ($data['role']=="pelanggan"){
echo "<script>alert('login anda telah berhasil, pelanggan'); window.location.href='dashboard.php'</script>";
$_SESSION['username'] = $username;
$_SESSION['role'] = "pelanggan";
}
}else{
echo "<script>alert('Anda gagal login');</script>";
}
}
?>
Untuk script tampilan login dapat seperti ini
<div class="container my-5">
<div class="row justify-content-center">
<div class="col-4">
<div class="card">
<div class="card-body">
<div class="text-center">
<i class="bi bi-person-fill" style="font-size: 7rem;"></i>
</div>
<h5 class="card-title text-center">Login</h5><br>
<form method="POST">
<div class="mb-3">
<label for="username" class="form-label">Username</label>
<input type="text" class="form-control" id="username" name="username"
placeholder="Masukkan Username">
</div>
<div class="mb-3">
<label for="password" class="form-label">Password</label>
<input type="password" class="form-control" id="password" name="password"
placeholder="Masukkan Password">
</div>
<div class="d-grid gap-2">
<button type="submit" class="btn btn-primary" name="login">Login</button>
<div>Belum punya akun? Silahkan "<a href=""><u>Register</u></a>"</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
register.php
<?php
// Menampilkan header
include "template/header.php";
?>
<div class="container my-5">
<div class="row justify-content-center">
<div class="col-5">
<div class="card">
<div class="card-body">
<div class="text-center">
<i class="bi bi-person-fill" style="font-size: 7rem;"></i>
</div>
<h5 class="card-title text-center">Register Member Petshopqu</h5>
<form>
<div class="mb-3">
<label for="email" class="form-label">Username</label>
<input type="email" class="form-control" id="email">
</div>
<div class="mb-3">
<label for="password" class="form-label">Password</label>
<input type="password" class="form-control" id="password">
</div>
<div class="mb-3">
<label for="nama" class="form-label">Nama Lengkap</label>
<input type="text" class="form-control" id="nama">
</div>
<div class="mb-3">
<label for="alamat" class="form-label">Alamat</label>
<input type="text" class="form-control" id="alamat">
</div>
<div class="mb-3">
<label for="no-hp" class="form-label">No. HP</label>
<input type="numeric" class="form-control" id="no-hp">
</div>
<div class="d-grid gap-2">
<button type="submit" class="btn btn-primary">Register</button>
<div>Sudah punya akun? Silahkan "<a href="login.php"><u>Login</u></a>"</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
<?php
// Menampilkan footer
include "template/footer.php";
?>
Logout.php
<?php
session_start();
session_destroy();
header("Location: login.php");
?>
Komentar
Posting Komentar