[阅读: 399] 2011-06-29 02:56:32
虽然前段时间论坛也出现过关于 ' 和 / 的一些异常。
那是俺不太了解php的结果。
其实,如果一定要用拼串的方法,
给所有的 SQL 中的字符串,加上一个 sqlstr( ) 的函数包装,
给所有的 SQL 中的数值,加上一个 sqlnum( ) 的函数包装即可。
例如:
sql += " WHERE fuckingcall = '" + sqlstr(query("fuckingcall")) + "' ";
sql += " WHERE fuckingtimes = " + sqlnum(query("fucking")) + " ";
sqlnum 要判断是否为数值
sqlstr 里面把所有 ' 替换成 '',mysql 之类还要把 \ 替换成 \\
如果有 LIKE 另议。
有些语言里还要判断串里是否有 \x00 异常中断字符串的情况,
如ASP调用ADODB.Command。
最好还是不要用拼串,自己代码严谨还好,小伙记写的不好查问题。
但是拼串应是最显而易见、运行效率最高的方法吧?
Notemper2x 3.1 ( ̄ε( ̄#)
没脾气2x 之 个人综合篇:
http://notemper2x.cndev.org/
我的 panoramio 相册:
http://panoramio.com/user/zhaixudong
我的 flickr相册:
http://www.flickr.com/photos/notemper2x/
QQ号20250出售,售价400,000元整(5位、皇冠80级、VIP7)