我有点问题。我有一个带提交按钮的登录框,但我无法重定向到另一个页面。我插入了电子邮件和密码,但它不起作用,它只停留在第一页。我该怎么办?
我用这个:
header("Location: home.php");
这是我的代码:
<?php session_start();
include_once 'dbconnect.php';
if(isset($_SESSION['user'])!="") {
header("Location: home.php");
}
if(isset($_POST['btn-login'])) {
$email = mysql_real_escape_string($_POST['email']);
$upass = mysql_real_escape_string($_POST['pass']);
$res=mysql_query("SELECT * FROM users WHERE email='$email'");
$row=mysql_fetch_array($res);
if($row['password']==md5($upass)) {
$_SESSION['user'] = $row['user_id'];
header("Location: home.php");
} else {
?>
<script>alert('wrong details');</script>
<?php } } ?>
答案 0 :(得分:1)
首先isset($_SESSION['user'])
返回布尔值:true
或false
而不是“”,因此您必须使用if(isset($_SESSION['user']) && $_SESSION['user']!="")
。
其次,所有mysql_*
函数都已取消重新创建。
也不要混用PHP和JS代码。
答案 1 :(得分:1)
<?php session_start();
include_once 'dbconnect.php';
if(isset($_SESSION['user']) && $_SESSION['user']!='') {
header("Location: home.php");
}
if(isset($_POST['btn-login'])) {
$email = mysql_real_escape_string($_POST['email']);
$upass = mysql_real_escape_string($_POST['pass']);
$res=mysql_query("SELECT * FROM users WHERE email='$email'");
$row=mysql_fetch_array($res);
$_SESSION['user']='we have pw';
if( $row['password']==md5($upass) ) {
$_SESSION['user'] = $row['user_id'];
header("Location: home.php");
} else {?>
<script>alert('wrong details');</script>
你的密码是否转换为md5? 在这一行应该是问题。 提及:如果这是你的home.php那么它会整天重定向。
答案 2 :(得分:0)
更改此
header("Location: home.php");
到
echo "<script>window.location.assign("home.php")</script>";
答案 3 :(得分:-1)
试试这个:
<?php session_start();
include_once 'dbconnect.php';
if(isset($_SESSION['user'])!="") {
header("Location: home.php");
}
if(isset($_POST['btn-login'])) {
$email = mysql_real_escape_string($_POST['email']);
$upass = mysql_real_escape_string($_POST['pass']);
$res=mysql_query("SELECT * FROM users WHERE email='$email' AND password= 'md5($upass)' ");
$row=mysql_fetch_array($res);
if($row) {
$_SESSION['user'] = $row['user_id'];
header("Location: home.php");
} else {
?>
<script>alert('wrong details');</script>
<?php }} ?>