重定向太多次错误[PHP& MySQL的]

时间:2016-09-07 22:20:47

标签: php html mysql

我试图帮助我的朋友解决PHP和MySQL的问题。自从我完成PHP / MySQL以来已经有3-4个月了,所以我需要一些帮助来确定问题。以下代码产生错误,通知用户localhost已重定向太多次:

<!DOCTYPE html>
<html>
  <head>
<meta charset="utf-8">
<title>Login
</title>
<link rel="stylesheet" href="css/style.css" />
  </head>
  <body>
<?php
require('db.php');
session_start();
// If form submitted, insert values into the database.
if (isset($_POST['username'])){
$username = $_POST['username'];
$password = $_POST['password'];
$username = stripslashes($username);
$username = mysql_real_escape_string($username);
$password = stripslashes($password);
$password = mysql_real_escape_string($password);
//Checking is user existing in the database or not
$md5pass = md5($passowrd);
$query = "SELECT * FROM `users` WHERE username='$username' and     password='$md5pass'";
$result = mysql_query($query) or die(mysql_error());
$rows = mysql_num_rows($result);
if($rows==1){
$_SESSION['username'] = $username;
header("Location: index.php"); // Redirect user to index.php
}else{
echo "<div class='form'><h3>Username/password is incorrect.</h3><br/>Click here to <a href='login.php'>Login</a></div>";
}
}else{
?>
<div class="form">
  <h1>Log In
  </h1>
  <form action="" method="post" name="login">
    <input type="text" name="username" placeholder="Username" required />
    <input type="password" name="password" placeholder="Password" required />
    <input name="submit" type="submit" value="Login" />
  </form>
  <p>Not registered yet? 
    <a href='registration.php'>Register Here
    </a>
  </p>
</div>
<?php } ?>
  </body>
</html>

是的,我确实意识到了有关代码的安全问题。我会告诉我的朋友这些问题,但是现在,我只想弄清楚为什么代码重定向很多次,而它应该只重定向一次。

我怀疑它与多个输出之后使用header()函数或者php部分未正确关闭这一事实有关。

1 个答案:

答案 0 :(得分:0)

if中有一个index.php语句,其中包含一个header()函数,该函数返回登录页面。它基本上是一个循环。