Skip to content Skip to sidebar Skip to footer

Memahami Penggunaan Mysql Escape String Dan Htmlentities


Memahami Penggunaan mysql escape string dan htmlentities Memahami Penggunaan mysql escape string dan htmlentities

Pada dasarnya baik itu fungsi mysql_escape_string maupun htmlentities sama – sama ialah fungsi untuk melaksanakan filter pada data. mysql escape string dipakai semoga ketika ada string yang di inputkan pada data tidak dijadikan/dieksekusi sebagai sebuah perintah query sedangkan htmlentities dipakai semoga kalau ada tag html yang diinputkan pada data tidak dihukum sebagai perintah html dan menampilkan data secara apa adanya.

Baca juga : Memahami Penggunaan mysqli_real_escape_string


Memahami Penggunaan mysql escape string dan htmlentities Memahami Penggunaan mysql escape string dan htmlentities


misal Penggunaan mysql_escape_string


Supaya lebih terang lagi, kita perlu melaksanakan tes kemampuan dan pemahaman untuk melihat perbedaan antara data yang dinputkan memakai filter atau tanpa filter. Kaprikornus misalkan disini saya mempunyai sebuah form untuk edit dan update data, contohnya form dibawah ini tidak di filter, dan kemudian saya sisipkan sebuah string ‘saat saya akan mencoba untuk mengupdate datanya


Form diatas akan mengirimkan datanya dan melaksanakan query untuk menyimpan/update data ke database, kurang lebih prosessnya nanti data akan di proses memakai $_POST[‘nama_data’]; atau dijadikan varibael $data=$_POST[‘nama_data’]; yang selanjutnya variabel tersebut akan dihukum memakai query yang ada.

Jika variabel yang dikirim memakai $_POST diatas mengandung string dan dikirim tanpa difilter, maka akan membuat data tidak tersimpan atau bahkan yang lebih jelek lagi ialah kita bisa melaksanakan perintah query – query tertentu atau istilah kerennya disebut sebagai SQL Injection.

Pada teladan diatas, ketika data yang mengandung string tersebut disimpan, maka yang terjadi ialah error ibarat diberikut :

Memahami Penggunaan mysql escape string dan htmlentities Memahami Penggunaan mysql escape string dan htmlentities


Dalam beberapa teladan kasus, seseorang yang ingin melaksanakan pengetesan terhadap sebuah aplikasi yang dibangun memakai PHP MySQL bisa melaksanakan acara pengetesan untuk celah SQL Injection spesialuntuk cukup dengan menambahkan parameter string untuk mengecek apakah data difilter atau tidak, mungkin akan ada banyak metode pengetesan ataupun juga cara mengamankannya ibarat memakai mysqli prepare. Namun dalam teladan ini saya spesialuntuk ingin mengambarkan wacana penerapan mysql escape string untuk meminimilisir terjadinya kesalahan ibarat diatas.

Untuk cara penerapannya, Anda spesialuntuk cukup menambahkan perintah mysql_escape_string pada varibel yang meliputi $_POST.

misal : $data=mysql_escape_string($_POST[‘nama_data’]);



misal Penggunaan htmlentities

htmlentities dipakai untuk mencegah adanya perjuangan untuk melaksanakan inject terhadap data dengan menyisipkan tag – tag html kedalam data, sehingga pada ketika disimpan kemudian ditampilkan, maka tag html akan ikut dieksekusi.

Misalnya saya mempunyai sebuah formulir untuk mengisi data, kemudian dengan sengaja saya menyelipkan tag html kedalamnya misal memakai tag <h1> , maka nanti ketika data disimpan kemudian ditampilkan, data tersebut (tag h1) akan ikut dihukum sebagai perintah HTML. contohnya ibarat diberikut

Memahami Penggunaan mysql escape string dan htmlentities Memahami Penggunaan mysql escape string dan htmlentities


Untuk mengatasi persoalan tersebut, Anda sanggup menyisipkan perintah pada variabel POST sehingga nanti tag html tersebut tidak akan ikut di sanksi pada ketika disimpan ataupun ditampilkan

misal : $data=htmlentities($_POST[‘nama_data’]);

Kaprikornus nanti misalkan Anda mencoba memasukan tag html kemudian menyimpannya ke database, tag html yang dimasukan akan di parse terlebih lampau memakai fungsi tersebut sebelum disimpan ke database, bila Anda melihat data yang disisipi oleh tag html tersebut dari database maka akan terlihat bahwa data yang disimpan ibarat terparse, ibarat yang bisa Anda lihat pada gambar dibawah ini

Memahami Penggunaan mysql escape string dan htmlentities Memahami Penggunaan mysql escape string dan htmlentities



Menggabungkan mysql_escape_string dan htmlentities
Supaya terhindar dari serangan SQL injection, juga terhindar dari serang HTML injection, maka Anda sanggup menggabungkan kedua perintah diatas.

misal : $data=mysql_escape_string(htmlentities($_POST[‘nama_data’]));

Kaprikornus hingga disini mungkin Anda sudah paham wacana penerapan ataupun perbedaan antara mysql_escape_string dan htmlentities

Penggabungan ibarat diatas sebenarnya tidak diperlukan,  dalam sebuah form input Anda bisa cukup memakai fungsi mysql_escape_string saja. Karena ada beberapa mitra beropini bergotong-royong untuk htmlentities lebih dipakai untuk memfilter data ketika akan ditampilkan bukan ketika akan disimpan

Untuk lebih jelasnya bisa dibaca di manual PHP nya atau disitus resmi PHP. Supaya tidak keliru ketika menerapkan atau mengimplemntasikan fungsinya pada Aplikasi yang Anda buat

Kesimpulan :
  1.  mysql_escape_string dipakai untuk memfilter data yang mengandung unsur string semoga ketika dihukum (query) tidak terjadi error atau terjadinya serangan SQL Injection
  2. htmlentities dipakai juga untuk memfilter data, tujuannya semoga kalau ada orang yang menyisipkan tag html pada ketika menyimpan data, maka tag HTML tersebut tidak akan dihukum atau ditampilkan sebagai perintah html.
  3. Menurut beberapa mitra sebenarnya Praktik terbaik dalam memakai fungsi htmlentities ialah bukan difilter pribadi ketika dikirim ibarat cara diatas, melainkan di filter ketika ditampilkan. Kaprikornus data tidak diparse di database, melainkan di parse ketika data ditampilkan.
Video Memahami Penggunaan mysql escape string dan htmlentities


Catatan * Praktik terbaik dalam memakai fungsi htmlentities ialah bukan difilter pribadi ketika dikirim ibarat cara diatas, melainkan di filter ketika ditampilkan. Kaprikornus data tidak diparse di database, melainkan di parse ketika data ditampilkan

Post a Comment for "Memahami Penggunaan Mysql Escape String Dan Htmlentities"