在使用Dedecms CMS系统为客户提供管理系统时,如果管理员账户数量较多(如300多个),搜索起来可能会非常不便。为了提升用户体验,可以添加一个管理员账户搜索功能。这个功能实现起来并不复杂,只需要修改两个文件即可。
### 第一步:修改模板文件 首先,打开默认的管理员用户管理页面模板文件: `/dede/templets/sys_admin_user.htm` 在这个文件中,找到一个合适的位置插入以下代码,用于创建搜索表单:

管理员搜索:
这段代码的作用是添加一个简单的搜索框和按钮,用户可以在其中输入关键词来搜索管理员账户。
### 第二步:修改PHP逻辑文件 接下来,需要对管理员用户的处理逻辑进行调整。打开以下文件: `/dede/sys_admin_user.php` 找到类似以下的代码行: `else $rank = " WHERE CONCAT(dede_admin.usertype)='$rank' ";` 在其下方加入以下代码,用于处理搜索关键词:

if(!isset($keyword)) $keyword = '';
else $keyword = trim(FilterSearch($keyword));
然后,找到查询语句部分: `$query = "SELECT dede_admin.*,dede_arctype.typename FROM dede_admin LEFT JOIN dede_arctype ON dede_admin.typeid = dede_arctype.id $rank ";` 将其修改为以下条件判断形式:

if($keyword<>'')
{
    $query = "SELECT dede_admin.*,dede_arctype.typename FROM dede_admin LEFT JOIN dede_arctype ON dede_admin.typeid = dede_arctype.id $rank where userid LIKE '%$keyword%' OR uname LIKE '%$keyword%'";
}
else
{
    $query = "SELECT dede_admin.*,dede_arctype.typename FROM dede_admin LEFT JOIN dede_arctype ON dede_admin.typeid = dede_arctype.id $rank ";
}
这样,当用户输入关键词时,系统会根据用户名或用户ID进行模糊匹配;如果没有输入关键词,则显示所有管理员账户。
### 功能完成与测试 按照上述步骤操作后,保存并上传修改后的文件到服务器。登录后台管理界面,进入管理员用户管理页面,尝试使用新添加的搜索功能。输入关键词后点击搜索按钮,系统应能正确返回符合条件的管理员账户列表。 通过这一改进,即使管理员账户数量庞大,也能快速定位目标账户,显著提升了管理效率。
希望这篇教程对您有所帮助!如果您还有其他问题,欢迎随时提问。