Mengenal MySQL Prepared Statement

Pada php versi jadul, untuk menghubungi MySQL kita dapat menggunakan mysql_query. Penggunaan mysql_query rentan dengan SQL injection, untuk mencegahnya kita menggunakan mysql_real_escape_string. Berikut ini ontoh pemrograman mysql_query untuk memasukkan data komentar ke database.

$nama = mysql_real_escape_string($_POST['nama']);
$komentar = mysql_real_escape_string($_POST['komentar']);
$q = mysql_query("INSERT INTO komentar (nama,komentar) VALUES ("$nama", "$komentar")");

Pada query di atas, jika komentar berisi karakter petik atau kutip, begitu diambil lagi akan menampilkan petik atau kutip itu dengan menggunakan backslash (\), misal kata jum'at akan ditampilkan menjadi jum\'at.

Pada php versi baru (5 ke atas), kita sebaiknya menggunakan MySQL prepare statement. Prepared statement memberikan pengamanan dari injeksi dan string. Prepared statement digunakan untuk mengeksekusi statement query yang sama atau mirip berulang-ulang dengan efisiensi tinggi. Dengan fitur ini, kita cukup mengirimkan query sebanyak satu kali kemudian kita dapat mengeksekusinya dengan hanya mengirim parameter-parameternya saja sehingga waktu eksekusi lebih cepat. Contoh penggunaan prepared statement dari php.net:


PHP Mahir, Mahirin skill PHP lo!

Tidak ada komentar:

Posting Komentar

Jika Anda memiliki tanggapan dan pertanyaan silakan isi form komentar berikut, kami akan menjawabnya segera. :)