Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用标题(“Location:url.php”)或表单操作重定向问题_Php_Forms_Redirect_Login_Action - Fatal编程技术网

使用标题(“Location:url.php”)或表单操作重定向问题

使用标题(“Location:url.php”)或表单操作重定向问题,php,forms,redirect,login,action,Php,Forms,Redirect,Login,Action,使用标题(“Location:url.php)时,url不会更改为新页面,在我们的例子中是login.php(因此刷新时,它将返回登录页面)。如果该页面以表单形式运行,则无需登录。因此,我现在的问题是,是否有人知道如何使用正确的URL访问正确的页面。或者,可能有人知道这可能是什么原因 Login.php(逻辑) login.php(表单) 在使用JQM时,这显然是一个已知的错误。显然有一个解决方法可以将数据ajax称为false: <form action="<?php echo $

使用
标题(“Location:url.php)
时,url不会更改为新页面,在我们的例子中是
login.php
(因此刷新时,它将返回登录页面)。如果该页面以表单形式运行,则无需登录。因此,我现在的问题是,是否有人知道如何使用正确的URL访问正确的页面。或者,可能有人知道这可能是什么原因

Login.php(逻辑)

login.php(表单)


在使用JQM时,这显然是一个已知的错误。显然有一个解决方法可以将数据ajax称为false:

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" data-ajax="false">

启动错误报告,看看你看到了什么。很可能不是你的程序在向你抛出有用的信息,而是你的配置在压榨它。还有一件事,我注意到你在使用会话。这是否包含在每个受影响的页面中?例如
会话_start();
。如果我使用标题(位置)它只显示该页面的内容,但url没有改变。恩,是的,我会在每个页面上影响它们page@MarnixVerhulst您没有使用
会话_start();
?我在您发布的代码中没有看到它。您的
$\u会话[“loggedin”]等。
没有它就没有用。是的,我在每个页面上都这样做……当我将数据ajax设置为false时,我可以用ajax创建表单吗?不完全确定您的意思。您应该能够通过ajax加载表单,但JQM在提交表单时不会尝试使用ajax,而且使用ajax获取当前页面会非常奇怪ly on(PHP_SELF)
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
  <input id="username" type="text" name="username" placeholder="username" />
  <input id="password" type="password" name="password" placeholder="password" />
  <p>Not yet signed up? <a href="register.php" >Register</a></p>
  <input type="submit" name="btnLogin" data-theme="b" value="Sign in">
</form>
public function Login() {
  $salt = "ab4p73wo5n3ig247xb1w9r";
  $db = new Db();
  $select = "SELECT * FROM users WHERE username = '" .
    $db->mysqli->real_escape_string($this->Username) .
    "' AND password = '" .
    $db->mysqli->real_escape_string(md5($this-> Password . $salt)) . "';";
  $result = $db->mysqli->query($select);
  if($result->num_rows == 1) {
    $_SESSION["loggedin"] = true;
    $_SESSION["username"] = $this->Username;
    //header("Location: show_bugs.php");
  } else {
    throw new Exception("Please enter correct username and password");
  }
}
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" data-ajax="false">