本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
Warning: Cannot modify header information - headers already sent by error
我在我的网站上收到这些错误
警告:无法修改标题信息 - 已在/ home / **** / public_html / monday / tuffturf /中发送的标题(在/home/****/public_html/monday/tuffturf/createrep.php:7中开始输出)第103行的createrep.php
警告:无法修改标题信息 - 已在/ home / **** / public_html / monday / tuffturf /中发送的标题(在/home/****/public_html/monday/tuffturf/createrep.php:7中开始输出)第104行的createrep.php
警告:无法修改标题信息 - 已在/ home / **** / public_html / monday / tuffturf /中发送的标题(在/home/****/public_html/monday/tuffturf/createrep.php:7中开始输出)第105行的createrep.php
警告:无法修改标题信息 - 已在/ home / **** / public_html / monday / tuffturf /中发送的标题(在/home/****/public_html/monday/tuffturf/createrep.php:7中开始输出)第106行的createrep.php
查询失败,请再试一次
mysql_fetch_assoc():提供的参数不是有效的MySQL结果资源
我已经检查了php标签的空白区域,我尝试了不同的东西,我无法找到解决方案
php从第86行开始,到134结束
$server = 'localhost';
$username = '*****';
$password = '*****';
mysql_connect($server, $username, $password);
mysql_select_db('***_turfdb')
or die ("unable to connect to mysql");
$reports = array(
'all' => 'SELECT * FROM quotepage',
'recent' => 'SELECT * FROM quotepage ORDER BY entered DESC LIMIT 20',
'oldest' => 'SELECT * FROM quotepage ORDER BY entered ASC LIMIT 20'
);
if (!array_key_exists($_POST['report'], $reports) || !isset($_POST))
{
die('Error generating report. please try again later.');
};
header("content-type:text/csv; charset=utf-8");
header('Content-Disposition:attachment;filename='.date('Y-m-d').'.csv');
header("pragma: no-cache");
header ("expires: 0");
/*if(isset($_POST) && !empty($_POST)) {
if(mysql_query($query)) {
echo"
} else {
echo"
echo mysql_error();
}
}*/
if(isset($_POST['header']))
{
$field = mysql_query('SHOW COLUMS FROM quotepage');
$label = array();
while($field = mysql_fetch_assoc($field));
{
$labels[] = $field ['Field'];
};
echo implode (',', $labels) ."
";
}
$data = mysql_query($reports[$_POST['report']]);
while($row = mysql_fetch_assoc($data));
die ("query failed please try again");
{
echo implode(',', $row) ."
";
}
?>
这是使用下拉框选择要在csv报告上显示的报告数量
这是我第一次尝试创建csv报告,所以如果需要更多信息,请询问
请查看右侧的"相关"部分。
如错误消息所示,您在createrep.php的第7行上有输出。
在将任何输出发送到浏览器(空格,HTML等)之前必须使用header()。
你注意到你提供的代码是在第86行。我想你已经输出了85行以上的东西。
看起来我们没有这里的所有代码,因为它看起来不像100行代码。 我的猜测是某个PHP标签之外的空格或换行符。 我总是在PHP文件底部留下结束标记,因为如果在关闭PHP标记之后有空格或新行,则它被解释为要发送到浏览器的html输出。 离开关闭的PHP标签并不是一个错误,所以如果我是你,我会养成这个习惯。