火车头采集实现DeDecms免登陆/自动登陆方法(永不过期)
本方法适用于DEDE所有模型和模块,所有发布模块仅需要添加一处配置参数即可。
实现步骤如下:
取消DEDE未登陆时出现的登陆提示
自动登陆DEDE
修改一处DEDE的代码,为DEDE程序管理员目录的config.php,默认路径为dede/config.php,代码如下:
- //检验用户登录状态
- $cuserLogin = new userLogin();
- if($cuserLogin->getUserID()==-1)
- {
- header("location:login.php?gotopage=".urlencode($dedeNowurl));
- exit();
- }
这段代码的作用是如果未检测到用户的登陆信息,就引导用户进入登陆过程,修改如下:
- //检验用户登录状态
- $cuserLogin = new userLogin();
- if($cuserLogin->getUserID()==-1)
- {
- if($my_u != ''){
- $res = $cuserLogin->checkUser($my_u, $my_p);
- if($res==1) $cuserLogin->keepUser();
- }
- if($cuserLogin->getUserID()==-1)
- {
- header("location:login.php?gotopage=".urlencode($dedeNowurl));
- exit();
- }
- }
这段代码的作用是在检测到用户未登陆时,尝试使用页面传递过来的参数进行登陆,如果登陆成功,则保存用户的信息并进行其它操作;如果登陆失败,就引导用户进入登陆页面。
这段代码修改完成,接下来要修改火车采集器的发布模块了。
修改发布模块,只需要在发布模块中添加登陆的用户名和密码信息,修改如图:
本文来源:zuola.net 原文链接