Uswahshop Feed

Kamis, 04 Februari 2010 - 18:15:05 WIB
Cara untuk memasukkan data tanda petik tunggal ke database mysql
Diposting oleh : Administrator
Kategori: MYSQL - Dibaca: 71 kali


Bisa saya jelaskan dengan ringkas:
sql="SELECT / FROM tb WHERE var1='$kond'"

$kond adalah variabel input dari user.
Misal input adalah: "saya" (tanpa tanda petik)
sql berbunyi=SELECT * FROM tb WHERE var1='saya'
Artinya sql membuka tabel tb yang semua field var1 yang cumka berisi string "saya".
Bagaimana jika user diijinkan menggunakan tanda petik tunggal?
Misal diinput: ';DROP TABLE tb; >>lihat tanda petik di awal
Maka sql berbunyi: SELECT * FROM tb WHERE var1='';DROP TABLE tb;'
Hasilnya: HILANG TABEL, atau diisi DROP DATABASE dbku
HANCURDAH!

Cara inilah yg digunakan oleh ~~~ yang ngacoin situs KPU.

Dengan demikian, celah tsb telah ditutupi dengan bijak oleh php dengan tidak mengizinkan input tanda petik tunggal.

Ada sebenarnya fungsi php yang bisa mengizinkan tanda petik digunakan, yaitu:
string addslashes (string str)
Misal:
str="Saya adalah tanda ' petik"
echo addslashes (str)
//output: Saya adalah tanda ' petik

Untuk menghilangkan tanda :
string stripslashes (string str)
Misal:
str="Saya adalah tanda ' petik"
echo stripslashes(str)
//output: Saya adalah tanda ' petik

Juga hindari user input tanda titik koma!
HATI-HATI menggunakan fungsi ini.
Saya sarankan matikan input dari user yang berbentuk karakter2 yang digunakan MySQL!


Bookmark & Share  ADD TO DEL.ICIO.US ADD TO DIGG ADD TO FURL ADD TO NETSCAPE ADD TO REDDIT ADD TO STUMBLEUPON ADD TO TECHNORATI FAVORITES ADD TO SQUIDOO ADD TO WINDOWS LIVE ADD TO YAHOO MYWEB ADD TO GOOGLE

0 Komentar :


Isi Komentar :
Nama :
Website :
Pilih emotions :
Komentar :
 
Security Code :

 

 




  

Protected
Sertakan sumbernya jika copy paste

Valid
[Valid
click for a free hit counter
Hit the Hit web page.