解决方案 »
- 打印全局变量怎么让有html代码的变量显示字符串而不是html解析显示?
- php中怎样把PDO连接改成其它操作
- 用php实现自动提交表单的功能
- [求助]$body = ereg_replace( $value, $fileurl, $body )
- 请教PHP高手关于PHP提交表单
- 前面& 是做什么用的
- IE打不开本地html页面
- 高分求引用远程rss内容的代码
- 在php中,注册了一个session,如果指定该session只在固定的页面起作用?如何设置有效的时间?
- Linux 下 , php 調用 java 的 class 出錯,請高手幫忙
- 关于留言板的问题,求高人指点
- 能否推荐一款代码高亮的插件。。
setcookie( "house_havelogin", "true", time( ) + 36000 );
setcookie( "house_username", $row['house_username'], time( ) + 36000 );print_r($_COOKIE);
//header( "Location: index.php" );
echo "<script language='javascript'>alert('登陆成功!');window.location.href='index.php';</script>";
elseif($action == 'save'){
$ip = real_ip();
$username = trim($_POST['username']);
$password = trim($_POST['password']);
$time = strtotime($_POST['time']);
$checkinfo = $login->checkUserLogin($username, $password);
if($checkinfo == -1){
$error = '用户名或密码错误';
$tpl->assign('errormsg',$error);
$tpl->display('login.html');
}elseif($checkinfo == -2){
$error = '用户名或密码错误';
$tpl->assign('errormsg',$error);
$tpl->display('login.html');
}else{
$sql = "update {$tablepre}member set lastlogintime = '$time',logincount = logincount+1,loginip = '$ip' where username = '$username'";
$login->db->query($sql);
$login_flag = $login->userLogin($username,$password);
if($login_flag){
if($login_flag > 0){
if($info_all = $login->checkUserLogin($username, $password)){
$controller = $info_all['controller'];
// print_r($controller);
$action = explode(',',$info_all['action']);
$controller = explode(',',$info_all['controller']);
}
//-----登录成功在这里要进行登录初始化,检查用户信息是否正确---------
loadModel(array('register'));
$register = new register();
//检查
$register->initMemberDir($login_flag);
//------------检查结束---------------------------------------
$_SESSION['userinfo'] = array('uid'=>$login_flag,'uname'=>$username,'action'=>$info_all['action'],'controller'=>$info_all['controller']);
setcookie('uname', $username, $cookie_expire, $cookie_path, $cookie_domain);
setcookie('uid', $login_flag, $cookie_expire, $cookie_path, $cookie_domain);
setcookie('cp_username', sys_authcode($username,'ENCODE',$cookie_key), $cookie_expire, $cookie_path, $cookie_domain);
setcookie('cp_userid', sys_authcode($login_flag,'ENCODE',$cookie_key), $cookie_expire, $cookie_path, $cookie_domain);
}else{
header('location:my/index.php?s=2');
}
$gotourl = isset($_REQUEST['href']) && !empty($_REQUEST['href']) ? trim($_REQUEST['href']) : 'my/index.php';
if($_POST['url']){//记录的来源页
$sourceurl=$_POST['url'];
//echo $sourceurl;
header('location:my/index.php');
//header('location:'.$sourceurl);
exit;
}
header('location:'.$gotourl);
}else{
header('location:login.php');
exit;
}
}
}
打印出来的结果是:
Array ( [PHPSESSID] => 7eb541d8dd8c046fb5319cb3bc7e5093 [Hm_lpvt_89345eb73e423a9d939aeba436c2179f] => 1321427903421 [rtime] => 0 [ltime] => 1321427903046 [cnzz_eid] => 16545484-1321408684- [Hm_lvt_89345eb73e423a9d939aeba436c2179f] => 1321427903421 )
2 在header( "Location: index.php" );下面添加 print_r($row);确认是否有用户信息存在
3 在index.php里面添加 echo $_COOKIE['house_username'] ;确认在COOKIE是否有数值php.ini 内需要设置
output_buffering = on程序自身还存在问题,如果登录正常了,那么任何人随便写用户名密码都能登录
建议在将查询的SQL加上用户名和密码2个字段进行查询