Menampilkan data dari database ke checkbox dan otomatis tercentang di PHP
Hallo guys.. mungkin dari kita sedang bekerja dengan checkbox.. saat kita menginput data dengan menggunakan checkbox dan kita gabungkan dengan menggunakan implode, kemudian data tersebut tersimpan kedatabase
Dan pada tutorial sebelumnya saya sudah membahas Cara Menggunakan Input Checkbox di PHP , pada artikel tersebut anda akan mengetahui cara2 yang dapat diguanakan dalam menangani data input tye checkbox
Nah pada tutorial ini kita akan membahas, cara Update dan menampilkan data checkbox dengan php, adapun dalam tutorial ini
Contoh :
"apple,orange,banana";
Dari data di atas , kita ingin membuat update data, nah disini kita harus menampilkan data di checkbox dan checkbox otomatis terisi / tercetang berdasarkan data yang ada di database,
<?php
$all_fruits = array('apple','banana','kiwi','melon','orange','watermelon');
$fruit = "apple,orange,banana";
$fruitArr = explode(",",$fruit); // convert selecte fruits to array
foreach ($all_fruits as $fruit){
$checkedStatus = "";
// check if $fruit in $selected fruit array - make it checked
if(in_array($fruit,$fruitArr)) { $checkedStatus ="checked"; }
echo "<label><input type='checkbox' ".$checkedStatus." value='".$fruit."'/>".$fruit."</label>";
}
?>
Nah.. bagaimana jika data kita ambil dari database .. ??? misalnya, kita punya data seperti berikut ini ,
Data tersebut ingin kita simpan dalam sebuah tabel hobi dalam database dan dalam 1 colom / field , jadi database nya misalnya seperti ini :
id_hobi | nama | hobi
Ketika user memilih hobi bisa saja lebih dari satu , katakanlah budi dengan hobi Makan dan Minum , akan tersimpan di database pada satu baris :
id_hobi | nama | hobi |
1 | budi | makan-minum |
Untuk mendapatkan data seperti diatas , berikut source code PHP nya untuk menangani proses checkbox tersebut :
$hobi = (count($_POST['hobi']) > 0) ? implode('-', $_POST['hobi']) : "";
$hobi merupakan variabel yang kita gunakan dalam proses input data
Bersambung.....