Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[已经确认] 后台用户搜索的用户名区没过滤通配符

[复制链接]
godamen 发表于 2008-12-25 16:57:55 | 显示全部楼层 |阅读模式
本帖最后由 茄子 于 2008-12-26 09:46 编辑

在用户名区输入“abc_1"这种用户名时不能正确搜出结果。
茄子 发表于 2008-12-26 09:45:42 | 显示全部楼层
ok
回复

使用道具 举报

C43F 发表于 2009-3-24 12:12:55 | 显示全部楼层
这个问题还没解决
问题出在
        foreach ($strkeys as $var) {
                $value = isset($_GET[$var])?stripsearchkey($_GET[$var]):'';
                if(strlen($value)) {
                        $wherearr[] = "{$pre}{$var}='$value'";
                        $urls[] = "$var=".rawurlencode($value);
                }
        }

//处理搜索关键字
function stripsearchkey($string) {
        $string = trim($string);
        $string = str_replace('*', '%', addcslashes($string, '%_'));
        $string = str_replace('_', '\_', $string);
        return $string;
}
回复

使用道具 举报

C43F 发表于 2009-3-24 12:14:54 | 显示全部楼层
最好的方法是
//处理搜索
$intkeys = array('uid', 'groupid', 'namestatus', 'avatar');
$strkeys = array('username');
$randkeys = array(array('sstrtotime','dateline'), array('sstrtotime','updatetime'), array('intval','credit'));
$likekeys = array('name');
中的username加入到
$likekeys中
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-16 06:36 , Processed in 0.022422 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表