0

在用户成功登录后尝试将用户重定向到 index.php。除了重定向之外,我一切正常。现在已经环顾了大约一个小时,但没有运气..我确定它与拥有该页面的 jQueryMobile 有关

试过

header('Location: index.php');  

什么都没发生。

也试过

echo '<script type="text/javascript">$.mobile.changePage($(\'index.php\'), {transition : "slide"});</script>';

如果我将它们作为我的 php 代码的第一部分,两者都会进行重定向,但是当放置在我需要的地方时,它们什么也不做。

这是我的代码:

<?php include "layouts/header.php"; 
if (isset($_POST['submit'])) { // Form has been submitted.

  $username = trim($_POST['username']);
  $password = trim($_POST['password']);

  // Check database to see if username/password exist.
    $hashpass = sha1($password);
    $found_user = User::authenticate($username, $hashpass);

  if ($found_user) {
    $session->login($found_user);
    $message = "Logged in";
    // Redirect to index.php ********

  } else {
    // username/password combo not found 
    $message = "Username/password combination incorrect.";
    $forgotdisplay = "visible";
  }

} else { // Form was not been submitted.
  $username = "";
  $password = "";
}
?>
</head>
<body>
 <div data-role="page" id="loginForm">
    <div data-role="header">
      <h1>Assessment</h1>
    </div>
    <div data-role="content" class="centerContent">
        <h2>Login</h2>
        <p><?php echo output_message($message); ?></p>
        <form action="login.php" method="post" data-ajax="false">
          <table>
            <input type="text" id="username" name="username" maxlength="50" placeholder="username" value="<?php echo htmlentities($username); ?>" />
            <input type="password" id="password" name="password" maxlength="30" placeholder="password" value="<?php echo htmlentities($password); ?>" />            
            <input type="submit" name="submit" value="Login" />       
        </form>
        <a href="register.php" data-role="button" data-transition="slide">Sign Up</a>
        <a href="forgot.php" data-role="button">Forgot Your Password?</a>
        <p id="validate-status"></p>
    </div>
</div>
</body>
</html>

提交有效凭据后,$message确实会正确更改为“登录”,因此我知道我在脚本中已经走了这么远。也尝试过data-ajax="false""true"

4

1 回答 1

0

您好,您可能想将完整的域放在那里。我也有这个问题

header('location: www.yourdomain.com/index.php');

我相信这应该可以解决问题

于 2013-04-10T19:11:06.687 回答