1
我在重定向到同一页面时遇到问题。我不断收到消息:“本地主机页面不工作,本地主机重定向您太多次了,ERR_TOO_MANY_REDIRECTS”。问题重定向到同一页面
在我的导航栏中有注册和登录的下拉菜单。注册工作正常,登录过了几分钟,然后由于某种原因突然停止工作。我在一个多小时内没有触及代码。
<?php
session_start();
if(isset($_SESSION['usr_id'])) {
header("Location: index.php");
}
include_once 'dbconnect.php';
//set validation error flag as false
$error = false;
//check if form is submitted
if (isset($_POST['signup'])) {
$name = mysqli_real_escape_string($con, $_POST['name']);
$email = mysqli_real_escape_string($con, $_POST['email']);
$password = mysqli_real_escape_string($con, $_POST['password']);
$cpassword = mysqli_real_escape_string($con, $_POST['cpassword']);
//name can contain only alpha characters and space
if (!preg_match("/^[a-zA-Z ]+$/",$name)) {
$error = true;
$name_error = "Name must contain only alphabets and space";
}
if(!filter_var($email,FILTER_VALIDATE_EMAIL)) {
$error = true;
$email_error = "Please Enter Valid Email ID";
}
if(strlen($password) < 6) {
$error = true;
$password_error = "Password must be minimum of 6 characters";
}
if($password != $cpassword) {
$error = true;
$cpassword_error = "Password and Confirm Password doesn't match";
}
if (!$error) {
if(mysqli_query($con, "INSERT INTO users(name,email,password) VALUES('" . $name . "', '" . $email . "', '" . md5($password) . "')")) {
$successmsg = "Successfully Registered! <a href='login.php'>Click here to Login</a>";
} else {
$errormsg = "Error";
}
}
}
if (isset($_POST['login'])) {
$email = mysqli_real_escape_string($con, $_POST['email']);
$password = mysqli_real_escape_string($con, $_POST['password']);
$result = mysqli_query($con, "SELECT * FROM users WHERE email = '" . $email. "' and password = '" . md5($password) . "'");
if ($row = mysqli_fetch_array($result)) {
$_SESSION['usr_id'] = $row['id'];
$_SESSION['usr_name'] = $row['name'];
header("Location: index.php");
die;
} else {
$errormsg = "Incorrect Email or Password!!!";
}
}
?>
<div class="wraplogin">
<form role="form" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" name="loginform" id="edd_login_form" class="edd_form">
<fieldset>
<legend>Log into Your Account</legend>
<p>
<label>Username</label>
<input type="text" name="email" required class="form-control" id="edd_user_login" class="required edd-input" />
</p>
<p>
<label>Password</label>
<input type="password" name="password" placeholder="Your Password" required class="form-control" id="edd_user_pass" class="password required edd-input" />
</p>
<p>
<input id="edd_login_submit" type="submit" class="edd_submit" name="login" value="Log In" />
</p>
<li class="divider"></li>
<p class="edd-lost-password">
<a href="#" title="Lost Password">Lost Password? </a>
</p>
</fieldset>
</form>
<span class="text-danger"><?php if (isset($errormsg)) { echo $errormsg; } ?></span>
</div>
任何人都知道是什么问题?
代码片段仅用于HTML,JS和CSS,而不是PHP。 – Huey
如果你的PHP文件被命名为'index.php',当'isset($ _SESSION ['usr_id'])'时,它会自动重定向。 – Huey