Aplikasi daftar tugas sederhana yang mengambil tugas yang dikirimkan oleh pengguna dalam formulir dan menyimpannya di database MySQL. Tugas juga diambil dari database dan ditampilkan di halaman web dengan tombol hapus di samping setiap tugas. Saat tombol hapus diklik, tugas dihapus dari database.
Itulah yang akan kita buat dalam tutorial ini.
Seperti biasa, mari kita buat database kita. Buat database bernama harus dan di dalamnya, buat tabel bernama tugas. Tabel tugas hanya memiliki dua bidang yaitu:
- id - int(10)
- tugas - varchar(255)
Sekarang buat dua file:
- index.php
- style.css
Buka di editor teks dan rekatkan kode berikut di dalam file index.php:
<!DOCTYPE html>
<html>
<head>
<title>ToDo List Application PHP and MySQL</title>
</head>
<body>
<div class="heading">
<h2 style="font-style: 'Hervetica';">ToDo List Application PHP and MySQL database</h2>
</div>
<form method="post" action="index.php" class="input_form">
<input type="text" name="task" class="task_input">
<button type="submit" name="submit" id="add_btn" class="add_btn">Add Task</button>
</form>
</body>
</html>
Jika Anda melihat halaman Anda sekarang di browser, tampilannya seperti ini:
Mari tambahkan gaya. Langsung di bawah tag
<link rel="stylesheet" type="text/css" href="style.css">
Buka file style.css yang telah kita buat sebelumnya dan paste kode styling ini di dalamnya:
.heading{
width: 50%;
margin: 30px auto;
text-align: center;
color: #6B8E23;
background: #FFF8DC;
border: 2px solid #6B8E23;
border-radius: 20px;
}
form {
width: 50%;
margin: 30px auto;
border-radius: 5px;
padding: 10px;
background: #FFF8DC;
border: 1px solid #6B8E23;
}
form p {
color: red;
margin: 0px;
}
.task_input {
width: 75%;
height: 15px;
padding: 10px;
border: 2px solid #6B8E23;
}
.add_btn {
height: 39px;
background: #FFF8DC;
color: #6B8E23;
border: 2px solid #6B8E23;
border-radius: 5px;
padding: 5px 20px;
}
table {
width: 50%;
margin: 30px auto;
border-collapse: collapse;
}
tr {
border-bottom: 1px solid #cbcbcb;
}
th {
font-size: 19px;
color: #6B8E23;
}
th, td{
border: none;
height: 30px;
padding: 2px;
}
tr:hover {
background: #E9E9E9;
}
.task {
text-align: left;
}
.delete{
text-align: center;
}
.delete a{
color: white;
background: #a52a2a;
padding: 1px 6px;
border-radius: 3px;
text-decoration: none;
}
Jika kita me-refresh browser kita sekarang, kita mendapatkan ini:
Sekarang kita menulis kode untuk menyimpan tugas yang dikirimkan ke database.
Di bagian paling atas file index.php, sebelum baris pertama, tambahkan kode ini:
<?php
// initialize errors variable
$errors = "";
// connect to database
$db = mysqli_connect("localhost", "root", "", "todo");
// insert a quote if submit button is clicked
if (isset($_POST['submit'])) {
if (empty($_POST['task'])) {
$errors = "You must fill in the task";
}else{
$task = $_POST['task'];
$sql = "INSERT INTO tasks (task) VALUES ('$task')";
mysqli_query($db, $sql);
header('location: index.php');
}
}
// ...
Apa yang dilakukan adalah, jika pengguna mengklik tombol kirim, tugas disimpan dalam database. Namun jika tidak ada tugas yang diisi dalam formulir, nilai variabel $errors disetel ke 'Anda harus mengisi tugas'. Tapi itu tidak ditampilkan. Mari kita tampilkan.
Mari kita tempel kode ini di dalam formulir. Langsung di bawah tag
form://...
// </form>
<table>
<thead>
<tr>
<th>N</th>
<th>Tasks</th>
<th style="width: 60px;">Action</th>
</tr>
</thead>
<tbody>
<?php
// select all tasks if page is visited or refreshed
$tasks = mysqli_query($db, "SELECT * FROM tasks");
$i = 1; while ($row = mysqli_fetch_array($tasks)) { ?>
<tr>
<td> <?php echo $i; ?> </td>
<td class="task"> <?php echo $row['task']; ?> </td>
<td class="delete">
<a href="index.php?del_task=<?php echo $row['id'] ?>">x</a>
</td>
</tr>
<?php $i++; } ?>
</tbody>
</table>
Jika kita memasukkan tugas dalam formulir dan menekan tombol kirim, kita mendapatkan ini:
Bagus!
Mari kita buat tombol hapus kita berfungsi. Di bagian atas halaman, setelah blok if yang menyimpan tugas di database, tambahkan kode ini:
// delete task
if (isset($_GET['del_task'])) {
$id = $_GET['del_task'];
mysqli_query($db, "DELETE FROM tasks WHERE id=".$id);
header('location: index.php');
}
?>
Itu saja. Jika kita mengklik tombol 'x' kecil sekarang terhadap tugas, tugas itu akan dihapus dalam database.
Kesimpulan
Semoga ini membantu Anda. Salah satu fitur yang saya sarankan Anda tambahkan di aplikasi ini hanya untuk melatih keterampilan Anda lebih lanjut adalah dengan menambahkan fitur edit di mana postingan dapat diperbarui bahkan setelah dibuat. Petunjuk:Ikuti tutorial saya di CRUD: Membuat, mengedit, memperbarui, dan menghapus postingan dengan database MySQL
Terima kasih :D