-1

它没有将我带到成功的页面,而是停在脚本页面并在标题中给出错误“警告:无法修改标头信息 - 标头已由(输出开始于”)发送,我相信它与标头有关,并且在回声或其他东西之后有它,但我不知道如何修复它。非常感谢任何帮助

   <div style="position:absolute;left:750px;top:0px;width:160px;height:41px;overflow:hidden;">
<?php
if(isset($_SESSION['userName'])){
echo 'You are already logged in as <a href="recent.php" <a>'.$_SESSION['userName'].'</a>. Not you? <a href ="logout.php"</a>logout';
}else{
echo ' Please login <a href ="login_form.php" <a> click here</a>'.' Register <a href="register.php"<a>here</a>';
}

?>  
</div>
<div style="position:absolute;left:400px;top:150px;width:400px;height:141px;overflow:hidden;">
<?php
//=============Configuring Server and Database=======
$host        =    'localhost';
$user        =    'root';
$password    =    'revilo';
//=============Data Base Information=================
$database    =    'dbsneaker';

$conn        =    mysql_connect($host,$user,$password) or die('Server Information is not Correct'); //Establish Connection with Server
 mysql_select_db($database,$conn) or die('Database Information is not correct');

 //===============End Server Configuration============

 //=============Starting Registration Script==========

 $userName    =    mysql_real_escape_string($_POST['txtUser']);

 $password    =    mysql_real_escape_string($_POST['txtPassword']);

 //=============To Encrypt Password===================
//$password    =    md5($password);
//============New Variable of Password is Now with an Encrypted Value========
if(!trim($userName) || !trim($password)){
echo 'Please fill in the form <br> <a href="register.php"<a>Click here</a> to return to registration';
}else{
// There's no empty field
// Check user exists
$checkQuerySql = "SELECT * FROM `bladmin` WHERE `admin_usr_name` = '$userName'";
$checkQuery = mysql_query($checkQuerySql);
if(mysql_fetch_assoc($checkQuery)){
    echo 'User already exists <br> <a href="register.php"<a>Click here</a> to return to registration';
   }else{
    if(isset($_POST['btnRegister'])) //===When I will Set the Button to 1 or Press Button to register
{
$query    =    "insert into bladmin(admin_usr_name,admin_pwd)values('$userName','$password')";
$res    =    mysql_query($query);
header('location:success_register.php');
}// User doesnt exists
}
}



?>
</div>
</div>
4

2 回答 2

0

回答您的问题很简单,在设置标题之前应该没有输出;对于没有真正使用标题的新手来说,这是一个常见的错误。

<?php
header ("Location: test.php");
?>

这不会引发错误

<?php
 echo "blabla";
header ("Location: test.php");
?>

或者

<strong> test</strong>
<?php
header ("Location: test.php");
?>

以上将触发错误。

于 2013-03-21T02:08:05.963 回答
0

标题

请记住,header() 必须在发送任何实际输出之前调用,无论是通过普通的 HTML 标记、文件中的空白行还是通过 PHP。使用 include 或 require 函数或其他文件访问函数读取代码并在调用 header() 之前输出空格或空行是一个非常常见的错误。使用单个 PHP/HTML 文件时也存在同样的问题。

因此,您需要以在输出任何内容之前调用 header 的方式重新组织代码。

于 2013-03-21T02:07:09.763 回答