繁体   English   中英

脚本中有多个PHP“header(url)”,“无法修改标题信息”错误

[英]Multiple PHP “header(url)” in script, “Cannot modify header information” Error

嘿,我有一些脚本,如果符合某些标准,应该更改页面的URL,如果不符合,我会在其他地方更改。

我收到这个错误:

警告:无法修改标题信息 - 已在第53行的/hermes/bosweb25c/b1401/ipg.website/process.php中发送的标题(输出从/hermes/bosweb25c/b1401/ipg.website/process.php:7开始)

这是我的PHP。 我很确定它与if语句有关,但在我上传到我的web主机之前,它在我的WAMP服务器上工作正常。

<?php
session_start();
$con = mysql_connect('website', 'members_db_admin', 'password'); 
if (!$con) { 
    die('Could not connect: ' . mysql_error()); 
} 
echo 'Connected successfully<br />'; 

// make members the current db
$db_selected = mysql_select_db('members_db', $con);
if (!$db_selected) {
    die ('Can\'t use members database : ' . mysql_error());
}
$hash_password = md5($_POST['password']);

$email = $_POST['email'];

$result = mysql_query("SELECT email,password FROM `members` WHERE email = '$email'");
if (!$result) {
    echo 'Could not run query: ' . mysql_error();

}

$row = mysql_fetch_row($result);

if ($row[0] != $email && $hash_password != $row[1])
{
    $query = "INSERT INTO members (email, password)
    VALUES('".$_POST['email']."','".$hash_password."')";

    // Perform Query
    $result2 = mysql_query($query);

    // Check result
    // This shows the actual query sent to MySQL, and the error. Useful for debugging.
    if (!$result2) {
        $message  = 'Invalid query: ' . mysql_error() . "\n";
        //$message .= 'Whole query: ' . $query;
        die($message);
    }   
$_SESSION['email']=$_POST['email'];
$_SESSION['password']=$hash_password;
$_SESSION['loggedin']="YES";
$url = "Location: /welcome.php";
header($url);
}
$_SESSION['email']=$_POST['email'];
$_SESSION['password']=$hash_password;
$url = "Location: /checklogin.php";
header($url);
?>

你的问题是echo 'Connected successfully<br />'; 在使用header()调用设置标头之前,您无法打印任何内容。 确保在header()之前没有任何echo调用。

尝试ob_start(); 在session_start()之后;

如果您使用utf-8作为此文件的编码,请尝试保存它而不会导致此类问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM