ปันหาการติดต่อผ่านodbcแล้วเกิด sqlinjection กับเครื่องหมาย '
โพสต์แล้ว: 22/10/2007 12:01 am
ช่วยด้วยค้าบ
คือว่า ผมเขียนคำสั่ง
$connect= odbc_connect('phpaccess','','');
$sql_input = "INSERT into new values ('$r1','$r2','$r3' ~
odbc_exec($connect,$sql_input);
แล้วหา form ก่อนหน้านี้ ถ้ามีคนเขียนข้อมูลเป็น
$r1 ="สวัสดีครับ ^^' "
เช่นนี้อ่ะครับ มันจะ error ขึ้นมาเพราะมีเครื่องหมาย ' <-- นี้อยู่
ควรจะแก้ไขอย่างไรครับ?
เปิด magic quote GPC = On แล้ว
ผมลอง echo ดู มันก้อเป็น
INSERT into new values ('สวัสดีคัรบ ^^\' ','$r2','$r3' ~
ขอผู้รู้ช่วยแนะนำทีครับ
อ่อ error ที่มันแจ้งคือ
Warning: odbc_exec() [function.odbc-exec]: SQL error: [Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression., SQL state 22005 in SQLExecDirect in D:\changeprofile.php on line 111
นะครับ
คือว่า ผมเขียนคำสั่ง
$connect= odbc_connect('phpaccess','','');
$sql_input = "INSERT into new values ('$r1','$r2','$r3' ~
odbc_exec($connect,$sql_input);
แล้วหา form ก่อนหน้านี้ ถ้ามีคนเขียนข้อมูลเป็น
$r1 ="สวัสดีครับ ^^' "
เช่นนี้อ่ะครับ มันจะ error ขึ้นมาเพราะมีเครื่องหมาย ' <-- นี้อยู่
ควรจะแก้ไขอย่างไรครับ?
เปิด magic quote GPC = On แล้ว
ผมลอง echo ดู มันก้อเป็น
INSERT into new values ('สวัสดีคัรบ ^^\' ','$r2','$r3' ~
ขอผู้รู้ช่วยแนะนำทีครับ
อ่อ error ที่มันแจ้งคือ
Warning: odbc_exec() [function.odbc-exec]: SQL error: [Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression., SQL state 22005 in SQLExecDirect in D:\changeprofile.php on line 111
นะครับ