Cara Menampilkan Data Menggunakan PHP MySQLi Prepared
Sebelum kita sudah pernah mencoba prepared statements mysqli, belajar tentang pengertian prepared statement mysqli dan cara menggunakannya. Hanya saja pada kesempatan sebelumnya saya tidak menjelaskan rincian kode yang saya tulis, oleh karena itu pada kesempatan kali ini saya akan coba menjelaskannya kembali.
Seperti yang sudah pernah saya jelaskan sebelumnya bahwa proses prepared statement ini adalah teknik untuk melakukan query dimana query dengan data inti dibuat secara terpisah. Hal bertujuan untuk membuat query aman dan cepat (jika perintah yang sama digunakan dalam beberapa kali)
Berikut ini adalah Cara Menampilkan Data Menggunakan PHP MySQLi Prepared
Proses prepared ini dibagi menjadi beberapa bagian, pertama proses prepared, bind dan execute
1. Prepared
Contoh
<?php
//buat koneksi
$koneksi = new mysqli('localhost','root','','hutang');
//buat prepared
$perintah=mysqli_prepare($koneksi,"SELECT * FROM hutangu where namahutang=?");
?>
Disini pertama kita perlu mengeset prepare mysqli_prepare() yang disimpan kedalam variabel $perintah kemudian diikuti. Dimana dalam prepare terdapat perintah query yang didalamnya menggunakan tanda tanya ?. Tanda ? tersebut nantinya akan diganti menggunakan proses bind yang berisi data yang bersangkutan
2. Bind
Proses selanjutnya adalah mengirimkan data ke Database Server dengan melakukan replace tanda ? yang berada di dalam prepared variabel $perintah. Untuk menggunakan Bind di PHP MySQLi, kita bisa menggunakan perintah mysqli_stmt_bind_param() dan selanjutnya diikuti oleh parameter, variabel yang berisi query prepare yaitu $perintah, string data dan varaibel data yang akan dijalankan didalam query MySQL
Contoh :
<?php
//variabel data yang nantinya dijalankan dalam query
$namahutang="Bensin";
//memulai melakukan bin
mysqli_stmt_bind_param($perintah, "s", $namahutang);
?>
Didalam perintah mysql_tmt_bind_param() terdapat tiga parameter, yaitu berisi variabel prepare $perintah kemudian string “s” dan $namahutang yang merupakan data yang mengganti tanda ? didalam query. “s” merupakan tipe dari data yang bersangkutan. PHP menyediakan 4 tipe data :
i = variabel bertipe integer
d = variabel bertipe double
s = variabel bertipe string
b = variabel bertipe blob (binary)
3. execute
Proses selanjutnya adalah melakukan eksekusi supaya prepared statemenet diajalankan atau dikirim ke datbase server menggunakan perintah mysqli_stmt_execute(). Jadi pada proses ini query akan dikirim ke MySQL
Contoh :
<?php
mysqli_stmt_execute($perintah);
?>
Kemudian proses selanjutnya adalah menampilkan hasil query kita bisa menggunakan perintah mysqli_stmt_get_result() yang dikuti dengan parameter variabel yang berisi mysqli_prepare()
Contoh :
<?php
$result=mysqli_stmt_get_result($perintah);
?>
Selanjutnya untuk menampilkan datanya nanti bisa menggunakan mysqli_fetch_array() atau fetch_row()
Contoh :
<?php
while($row=mysqli_fetch_row($result)){
echo "$row[0] $row[1] $row[2]";
}
?>
Contoh keseluruhan kode bila digabungkan adalah sebagai berikut :
Cara Menampilkan Data Menggunakan PHP MySQLi Prepared Procedural
<?php
//buat koneksi
$koneksi = new mysqli('localhost','root','','hutang');
//buat prepared
$perintah=mysqli_prepare($koneksi,"SELECT * FROM hutangku where namahutang=?");
//jika gagal tampilkan error
if(!$perintah){
die('Gagal melakukukan koneksi='.mysqli_errno($koneksi).'-'.mysqli_error($koneksi));
}
$namahutang="Bensin";
//jalankan di param
mysqli_stmt_bind_param($perintah, "s", $namahutang);
//eksekusi perintah
mysqli_stmt_execute($perintah);
//tampilkan data
$result=mysqli_stmt_get_result($perintah);
while($row=mysqli_fetch_row($result)){
echo "$row[0] $row[1] $row[2]";
}
//tutup statemen dan koneksi
//ini bersifat oposional
mysqli_stmt_close($perintah);
mysqli_close($koneksi);
?>
Bila kode diatas di eksekusi oleh browser maka Akan menampilkan data berikut
Cara Menampilkan Data Menggunakan PHP MySQLi Prepared OOP (Object Oriented Programming)
Kita juga bisa menggunakan teknik penulisan kode PHP OOP untuk membuat prepared statments mysqli. Anda bisa melihat contoh penulisan kodenya dibawah ini
prepare("SELECT * FROM hutangku where namahutang=?");
if(!$perintah){
die('Gagal melakukukan koneksi='.$koneksi->errno.'-'.$koneksi->error);
}
$namahutang="Bensin";
//jalankan di param
$perintah->bind_param("s", $namahutang);
//eksekusi perintah
$perintah->execute();
//jika gagal tampilkan error
//tampilkan data
$result=$perintah->get_result();
while($row=$result->fetch_row()){
echo "$row[0] $row[1] $row[2]";
}
//tutup statemen dan koneksi
$perintah->close();
$koneksi->close();
?>
Baca juga :
0 Response to "Cara Menampilkan Data Menggunakan PHP MySQLi Prepared"
Post a Comment
Komentar yang Anda kirim akan terlebih dahulu di moderasi oleh Admin