我已经在php中编写了一个注册页面,一切正常,值正在保存在数据库中,但是在将值保存到数据库后不会打开下一页 这是我的代码。请检查可能存在的问题。
<?php
if (isset($_POST['button']))
{
$st_name=$_POST['st_name'];
$f_name=$_POST['f_name'];
$email=$_POST['email'];
$re_email=$_POST['re_email'];
$pass=$_POST['pass'];
$re_pass=$_POST['re_pass'];
$phone=$_POST['phone'];
$mobile=$_POST['mobile'];
$skype=$_POST['skype'];
$quali=$_POST['quali'];
$country=$_POST['country'];
$city=$_POST['city'];
$date=$_POST['date'];
$g=$_POST['g'];
$image="back.jpg";
if($email!=$re_email){
echo "<script>window.open('sign_up.php?error=email_error','_self')</script>";
}
else if($pass!=$re_pass){
echo "<script>window.open('sign_up.php?error=pass_error','_self')</script>";
}
else{
$que="insert into sign_up(st_name,f_name,email,re_email,pass,re_pass,phone,mobile,skype,quali,country,city,date,gender,image)
values ('$st_name','$f_name','$email','$re_email','$pass','$re_pass','$phone','$mobile','$skype','$quali','$country','$city','$date','$g','$image')";
if(mysql_query($que))
{
$_SESSION['email']=$email;
$_SESSION['pass']=$pass;
header("location: index.php");
}
else{
mysql_error();
}
}
}
?>
答案 0 :(得分:1)
问题是您在调用header()
函数之前输出了一些内容。在调用该函数之前,您需要确保HTML输出中没有任何内容(甚至不是空格)。
答案 1 :(得分:0)
简直错字
更改
header("location: index.php");
要
header("Location: index.php");
答案 2 :(得分:0)
不确定这是否有所不同,但header("location: index.php");
需要L大写位置header("Location: index.php");
答案 3 :(得分:0)
如果未发送标头,则表示该条件未评估为true。 调用位置标头时不会保存SESSION变量,因为脚本在离开页面之前尚未完成运行。要在发送位置标头之前保存变量,请使用session_write_close()