Menampilkan data secara realtime di php

Hal yang harus di kuasai pertama adalah ketika kita mempelajari sesuatu bahasa pemrograman yaitu pasti CRUD dimana kita tidak hanya menampilkan tetapi kita harus bisa memasukan data, menampilkan, menghapus, bahkan mengedit, disini saya ingin berbagi membuat CRUD tersebut, dan untuk CRUD kali ini saya ingin mengedit dan memasukan datanya di sebuah table tersebut, jadi tidak ada kolom input form dan sebagainya seperti biasa, oke jangan kemana-mana simak terus ya.

Untuk membuat live table ini saya gunakan ajax jquery, saya harapkan teman-teman sudah punya basicnya ya, html, css, jquery, php dan ajax tentunya, seperti judulnya saya bisa mengedit data itu denga mengkliknya, dan untuk memasukan data saya tinggal masukan di table row yang bawahnya, oke langsung saja disini kita ingin menampilkan terlebih dahulu.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

<!DOCTYPE html>

<html>

<head>

<title></title>

<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">

<script type="text/javascript"src="https://code.jquery.com/jquery-3.4.1.min.js"></script>

</head>

<body>

<div class="container">

<div class="row">

<div class="col-md-12">

<span id="result"></span>

<div id="live_data"></div>

</div>

</div>

</div>

</body>

</html>

Ini adalah tablenya dimana terdapat id: live_data itu untuk menampilkan data kita, dan result itu menampilkan feedback jika berhasil, dan sebagainya, oke jika sudah lanjut kita buat sebuah object app seperti ini:

var app itu adalah untuk proses ajax jquery kita, oke kita buat untuk menampilkan datanya.

varapp={

show:function(){

  $.ajax({

   url:"show.php",

   method:"GET",

   success:function(response){

    $("#live_data").html(response)

   }

  })

}

}

Kita buat terlebih dahulu function shownya untuk proses menampilkannya, lalu data itu kita proses di webservicenya, dengan method get, dan jika berhasil responsenya akan kita tampilkan di id live_data, oke sekarang kita masuk ke webservice show.php nya, sekarang kita buat seperti ini:

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

<?php  

$koneksi=mysqli_connect("localhost","root","","data_ajax");

$query= mysqli_query($koneksi,"SELECT * FROM live_add_edit ORDER BY id DESC ");

?>

<table class="table">

<thead>

<tr>

<th scope="col"width="10%">Id</th>

<th scope="col"width="40%">Nama Depan</th>

<th scope="col"width="40%">Nama Belakang</th>

<th scope="col"width="10%">Action</th>

</tr>

</thead>

<tbody>

<?phpif(mysqli_num_rows($query)>0){?>

<?php while($row=mysqli_fetch_array($query)){?>

<tr>

<td><?phpecho$row["id"] ?></td>

<td contenteditable data-id1="<?phpecho$row["id"]?>"class="first_name"><?phpecho $row["first_name"]?></td>

<td contenteditable data-id2="<?phpecho$row["id"]?>" class="last_name"><?phpecho$row["last_name"]?></td>

<td><button class="btn btn-xs btn-warning" data-id3="<?phpecho$row["id"]?>"id="hapus">X</button></td>

</tr>

<?php }?>

<?php}else{?>

<tr>

<td colspan="4">DataTidakAda</td>

</tr>

<?php}?>

<tr>

<td></td>

<td id="first_name" contenteditable></td>

<td id="last_name"contenteditable></td>

<td><button id="btn_add"class="btn btn-xs btn-success">+</button></td>

</tr>

</tbody>

</table>

Menampilkan data secara realtime di php

Kunci dari live edit nantinya sebeneranya pada sebuah attribute HTML contenteditable tersebut, jadi kita bisa mengeditnya, dan disini bagaimana caranya kita bisa memproses data yang kita edit di contenteditable tersebut. Oke untuk kali ini saya rasa cukup untuk menampilkan saja ya.