一个数据查询的问题,急!!!!
在给人做一个挂机的网站时,由于那些玩家ID都是些奇怪的字符
所以在查询的时候我用:
select * from user where user_name like '%"&request("keyword")&"%'order by user_id DESC"
当执行这样的查询时页面就会停止响应,在本机和服务器上调试都这样
请问怎么办啊??我好急
大家可以在 http://www.zzdg.net/art.asp 执行那个搜索玩家功能,页面就会停住
问题点数:30、回复次数:7Top
1 楼hotlu(心蓝)回复于 2005-04-03 22:24:27 得分 0
估计用正则表达式就好做多了.
好多站有参考.
搜索"查询数据库特殊字符"Top
2 楼lstup(流水)回复于 2005-04-03 22:24:47 得分 0
过滤掉特殊字符Top
3 楼lqxjlz(星际浪子)回复于 2005-04-03 22:36:15 得分 0
可是,因为数据库中本身存了很多希奇古怪的玩家ID
而当我输入正常的 “张三” 时,语句应该变成:
select * from user where user_name like '%张三%'order by user_id
可是就算执行这样一条语句,也会卡住。所以,好象不仅是过滤查询字符串就能解决Top
4 楼lqxjlz(星际浪子)回复于 2005-04-03 22:38:17 得分 0
也就是说,问题不是出在输入的查询关键字上,而是数据表中本身存在的一些包含特殊字符的值,好象运行不过去Top
5 楼lqxjlz(星际浪子)回复于 2005-04-03 22:47:38 得分 0
问题暂时解决一些,我找到了那个出问题的玩家ID,原来ID中包含了“ ド ”这么一个东西。这些家伙,都不知道哪里搞来的符号。查询这个符号会益出Top
6 楼jianlei2002(追梦天使)回复于 2005-04-04 08:40:02 得分 0
看来,存储的时候要注意过滤数据呀!Top
7 楼jzywh(江大鱼)回复于 2005-04-04 08:44:50 得分 30
select * from [user] where user_name like '%"&request("keyword")&"%'order by user_id DESC"
user -> [user]
user是关键字Top




