因为一些原因需要自动采集数据或是自动登录,就如使用火车头自动采集文章发布到dede网站中,一时是可以发布,但是很多时候却发现过一段时间后dede又登录失败了显示未知发布,那么这时dede后台怎么才能永久自动登录呢。
网站后台永久自动登录代码思路
每次访问到网站后台时,先判断IP地址,如作者自己使用的是固定IP,如8.8.8.8,那么就先判断客户端IP是否为8.8.8.8,如果是8.8.8.8就自动使用dede的用户登录,成功登录并记录session即可。
当然如果说你是动态IP,也可心在每次访问栏目时加一个&字符串,在后台判断一下字符串是否为自己传过来的,如果是就直接登录即可。
以上思路适用于所有后台程序,不管是帝国还是dede或是其他cms系统均可。
dede后台永久自动登录代码
第1步:使用ftp下载dede后台中的config.php文件。
第2步:在文件中搜索“if($cuserLogin->getUserID()==-1)”此项,并在下面添加以下代码并保存。
02 |
$cuserLogin = new userLogin(); |
03 |
if ($cuserLogin->getUserID()==-1) |
05 |
$ip=$_SERVER[ 'REMOTE_ADDR' ]; |
06 |
if ($ip== '8.8.8.8' || $ip== "8.8.4.4" ){ |
07 |
// echo $ip. "~~~~~~~~~~~~~~~~~~~~~~~~~~~" ; |
08 |
$admindirs = explode( '/' ,str_replace( "\\" , '/' , dirname (__FILE__))); |
09 |
$admindir = $admindirs[count($admindirs)-1]; |
10 |
$cuserLogin = new userLogin($admindir); |
11 |
$res = $cuserLogin->checkUser( "pc811" , "passwords2" ); |
12 |
$cuserLogin->keepUser(); |
14 |
echo "<br />" .$ip. "..." .$cuserLogin->getUserID(). "~~" ; |
15 |
header( "location:login.php?gotopage=" .urlencode($dedeNowurl)); |
|
第3步:保存后并上传到网站覆盖原代码,然后我们直接访问到网站后台即可直接进入登录状态。
如果没有进入登录状态,请把//echo $ip."~~~~~~~~~~~~~~~~~~~~~~~~~~~";注销解除,查看一下当前ip地址是多少。