Anda tidak perlu melarikan diri dari tanda dolar. MySQL tidak memperlakukan karakter itu secara khusus, dan PHP hanya mengenalinya dalam kode sumber, bukan dalam nilai string (kecuali jika Anda memanggil eval
pada tali, tapi itu adalah kaleng cacing lainnya).
Anda hanya perlu keluar dari %
dan _
jika Anda menggunakan input pengguna sebagai argumen untuk LIKE
dan Anda tidak ingin pengguna dapat menggunakan wildcard. Ini bisa muncul jika Anda sedang memproses formulir pencarian. Anda tidak perlu menggunakannya saat menyimpan ke dalam database.
Anda tidak perlu menggunakan htmlspecialchars
saat mengakses database. Itu hanya boleh digunakan saat Anda menampilkan data kepada pengguna di halaman HTML, untuk mencegah injeksi XSS.