点击登录按钮跳转页面问题

z526266606 2016-04-18 05:31:53
<?php
require_once('connectvars.php');
session_start();
$error_msg = "";
if(!isset($_SESSION['user_id'])){
if(isset($_POST['submit'])){
$dbc = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
$userName = mysqli_real_escape_string($dbc, trim($_POST['userName']));
$userPassword = mysqli_real_escape_string($dbc, trim($_POST['userPassword']));
if(!empty($userName)&&!empty($userPassword)){
$query = "SELECT user_id, userName FROM userBasis WHERE userName = '$userName' AND userPassword = SHA('$userPassword')";
$data = mysqli_query($dbc, $query);
if(mysqli_num_rows($data) == 1){
$row = mysqli_fetch_array($data);
$_SESSION['user_id'] = $row['user_id'];
$_SESSION['userName'] = $row['userName'];
setcookie('user_id', $row['user_id'], time() + (60 * 60 * 24 * 30));
setcookie('userName', $row['userName'], time() + (60 * 60 * 24 * 30));
$home_url = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/index.php';
header('Location: ' . $home_url);
}
else{
$error_msg = "请输入正确的用户名或密码!";
}
}
else{
$error_msg = "请输入用户名或密码!";
}
}
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>login</title>
<link rel="stylesheet" href="css/login.css">
<script type="text/javascript">
function validateRegEx(regex, input, helpText, help){
if(!regex.test(input)){
if(helpText!=null)
helpText.innerHTML=help;
return false;
}
else{
if(helpText!=null)
helpText.innerHTML="";
return true;
}
}
function checkName(minLength, maxLength, inputField, helpText){
if(validateRegEx(new RegExp("^.{" + minLength + "," + maxLength + "}$"), inputField.value, helpText, "请依照正确长度输入!"))
validateRegEx(/^.[A-Za-z0-9]+$/, inputField.value, helpText, "有非法字符!");
}
function checkPassword(minLength, maxLength, inputField, helpText){
if(validateRegEx(new RegExp("^.{" + minLength + "," + maxLength + "}$"), inputField.value, helpText, "请依照正确长度输入!"))
validateRegEx(/^.[A-Za-z0-9]+$/, inputField.value, helpText, "有非法字符!");
}
</script>
</head>
<body onload="document.getElementById('userName').focus()">
<?php
if(empty($_SESSION['user_id'])){
echo '<p>' . $error_msg . '</p>';
?>
<div id="interFace">
<div id="title"><span>登录</span></div>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" name="loginForm">
<div class="tableRow">
<label for="userName">用户名:</label>
<input type="text" id="userName" name="userName" onblur="checkName(1, 16, this, document.getElementById('nameError'))" placeholder="请按正确格式输入">
<span id="nameError"></span>
</div>
<div class="tableRow">
<label for="userPassword">密码:</label>
<input type="password" id="userPassword" name="userPassword" onblur="checkPassword(1, 20, this, document.getElementById('passwordError'))">
<span id="passwordError"></span>
</div>
<div class="tableRow" id="btn">
<input type="submit" value="登录" onclick="placeOrder(this.form);">
<span id="formError"></span>
</div>
</form>
</div>
<?php
}
else{
echo '<p>你正在以 ' . $_SESSION['userName'] . '账户名登录。</p>';
}
?>
</body>
</html>


跳转代码在19,20行!!!

我想登陆后进行跳转页面到index.php,这个页面和这个登录页面在一个文件夹下,请问为什么没有办法跳转???
...全文
247 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuzuning 2016-04-18
  • 打赏
  • 举报
回复
if(!isset($_SESSION['user_id'])){ //没有登陆过
  if(isset($_POST['submit'])){ //是表单提交
    $dbc = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
    $userName = mysqli_real_escape_string($dbc, trim($_POST['userName']));
    $userPassword = mysqli_real_escape_string($dbc, trim($_POST['userPassword']));
    if(!empty($userName)&&!empty($userPassword)){ //输入参数非空
      $query = "SELECT user_id, userName FROM userBasis WHERE  userName = '$userName' AND userPassword = SHA('$userPassword')";
      $data = mysqli_query($dbc, $query);
      if(mysqli_num_rows($data) == 1){ //检索到唯一值
        $row = mysqli_fetch_array($data);
        $_SESSION['user_id'] = $row['user_id'];
        $_SESSION['userName'] = $row['userName'];
        setcookie('user_id', $row['user_id'], time() + (60 * 60 * 24 * 30));
        setcookie('userName', $row['userName'], time() + (60 * 60 * 24 * 30));
        $home_url = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/index.php';
        header('Location: ' . $home_url); //跳转 
      }
      else{
        $error_msg = "请输入正确的用户名或密码!";
      }
   }
请检查是否与你预期的一致
diligentyang 2016-04-18
  • 打赏
  • 举报
回复

echo "<script>alert('登录成功');location.href='index.php';</script>"
或者:

echo "<meta http-equiv=\"Refresh\" content=\"3;url=index.php\">登录成功3s后转入主页";
用户首次登陆系统需要注册一个用户或直接使用微信作为账号,用户在登录平台后,可以进行平台的操作。主要模块包括以下几点:(1)登录功能:注册普通账号登录;也可以直接使用微信登录登录后可以修改用户的基本信息,也可以退出。(2)资讯功能:后台录入资讯,在微信小程序失物招领系统的资讯模板展示,用户可以任意浏览资讯列表和详细信息,首页显示最新3条。(3)失物分类:后台进行失物分类信息设置,分类的录入、修改、删除;设置的分类信息在发布失物信息的时候进行选择。(4) 失物信息发布:先选择分类,然后填写要发布的信息(标题、内容、联系方式、姓名、相关图片等)。(5)失物信息列表和查询: 显示平台有的失物信息列表,可以点击信息查询,在列表的顶部输入要查询的失物信息中含有的关键字。(6)失物信息详情:从失物信息列表点击到详情页面,会显示详情内容,包含发布时间、点击、发布用户、联系人、电话、描述;支持点击图片全屏滑动查看,支持点击电话、直接拨打电话功能。(7)点赞和关注: 在失物信息详情页面底部,支持点赞和收藏关注功能(8)留言反馈:填写留言内容、联系人、手机号码、联系邮箱(9)我的收藏:收藏的失物信息,支持删除。(10)用户信息:填写姓名、qq、邮箱、备注等信息(11)退出登录:清除登录的cookie,跳转回首页

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧