时间:2021-07-01 10:21:17 帮助过:3人阅读
//user loginif (isset($_POST['username']) && isset($_POST['password']) && !empty($_POST['username']) && !empty($_POST['password'])) { try{ $username = $_POST['username']; $password = $_POST['password']; $rs = $config[DAOIMPL]->getLoginByName($username); $arr = mysql_fetch_array($rs); //echo $arr['sys_user_passwd']; if ($arr && $arr['sys_user_passwd'] == generateUserPassword($password)) { $_SESSION[SESSIONUSER] = $username; echo '';//跳转到根目录下的index.php }else { echo ""; exit(0); } } catch (Exception $e){ echo ""; exit(0); }}
跳转不了的表现是什么呢?网页不存在?还是脚本没反应?
1、你的传统代码不会抛出异常,所以你的异常处理是无效的,可以删去。或许就是他的原因
2、url 跳转宜使用绝对路径
location="/index.php"
跳转不了的表现是什么呢?网页不存在?还是脚本没反应?
文件名大小写一致么?windows默认是不区分大小写的,linux是区分大小写的。另外,你直接访问那个php,看是否能访问?
或者,你些一个静态的html文件,放到 loginin.php 相同位置,把 loginin.php里面的js拷贝进去测试,看能否正常跳转?
重新回到登录界面 不一定是你没有跳转到index.php,有可能是你的session没有注册成功,到index.php又转到login.php了。
你在index.php最前面放置一些输出信息,看是否有访问过index.php
?log看看程序走到哪?,再?定??。
//user loginif (isset($_POST['username']) && isset($_POST['password']) && !empty($_POST['username']) && !empty($_POST['password'])) { echo '1'; try{ $username = $_POST['username']; $password = $_POST['password']; $rs = $config[DAOIMPL]->getLoginByName($username); $arr = mysql_fetch_array($rs); //echo $arr['sys_user_passwd']; echo '2'; if ($arr && $arr['sys_user_passwd'] == generateUserPassword($password)) { $_SESSION[SESSIONUSER] = $username; echo '3'; echo '';//跳转到根目录下的index.php }else { echo '4'; echo ""; exit(0); } } catch (Exception $e){ echo '5'; echo ""; exit(0); }}
1、你的传统代码不会抛出异常,所以你的异常处理是无效的,可以删去。或许就是他的原因
2、url 跳转宜使用绝对路径
location="/index.php"
有可能是你的session没有注册成功,到index.php页面之后,判断没有登录,又往登录界面跳转了。你先屏蔽index.php的跳转功能试试看。
?log看看程序走到哪?,再?定??。
//user loginif (isset($_POST['username']) && isset($_POST['password']) && !empty($_POST['username']) && !empty($_POST['password'])) { echo '1'; try{ $username = $_POST['username']; $password = $_POST['password']; $rs = $config[DAOIMPL]->getLoginByName($username); $arr = mysql_fetch_array($rs); //echo $arr['sys_user_passwd']; echo '2'; if ($arr && $arr['sys_user_passwd'] == generateUserPassword($password)) { $_SESSION[SESSIONUSER] = $username; echo '3'; echo '';//跳转到根目录下的index.php }else { echo '4'; echo ""; exit(0); } } catch (Exception $e){ echo '5'; echo ""; exit(0); }}
if (isset($_POST['username']) && isset($_POST['password']) && !empty($_POST['username']) && !empty($_POST['password'])) { $username = $_POST['username']; $password = $_POST['password']; $rs = $config[DAOIMPL]->getLoginByName($username); $arr = mysql_fetch_array($rs); if ($arr && $arr['sys_user_passwd'] == generateUserPassword($password)) { $_SESSION[SESSIONUSER] = $username; echo ''; echo ''; }else { echo ""; }}如果登录成功,会弹出“验证成功”对话框,你有吗?
有可能是你的session没有注册成功,到index.php页面之后,判断没有登录,又往登录界面跳转了。你先屏蔽index.php的跳转功能试试看。
if (isset($_POST['username']) && isset($_POST['password']) && !empty($_POST['username']) && !empty($_POST['password'])) { $username = $_POST['username']; $password = $_POST['password']; $rs = $config[DAOIMPL]->getLoginByName($username); $arr = mysql_fetch_array($rs); if ($arr && $arr['sys_user_passwd'] == generateUserPassword($password)) { $_SESSION[SESSIONUSER] = $username; echo ''; echo ''; }else { echo ""; }}如果登录成功,会弹出“验证成功”对话框,你有吗? 有,3楼的图就是登录后,弹出对话框的截图
有可能是你的session没有注册成功,到index.php页面之后,判断没有登录,又往登录界面跳转了。你先屏蔽index.php的跳转功能试试看。
那就是你没有 session_start() 了
?出session看看有什??西?
问题初步判断确实是出在我session 检查的代码里,谢谢大家帮忙分析!