未定义的偏移量和警告:无法修改标头信息 - 已发送的标头

时间:2013-02-26 11:58:07

标签: php mysql csv

我可以在$values = mysql_query("SELECT * FROM ".$table."");

时完美输出CSV

然而,当我尝试选择具体的列时,例如在

$values = mysql_query("SELECT email, status FROM ".$table."");

我收到以下错误

  

注意:未定义的偏移量:1(直到我有N-1个字段)警告:   无法修改标头信息 - 已由

发送的标头

你们可以提出建议吗?

2 个答案:

答案 0 :(得分:0)

这不是已发送问题的标题。此错误只是另一个错误的结果 当然,错误消息会导致标题被发送 但修复错误,两条消息都将消失。

尽管如此,“未定义的偏移量”错误是Stackoverflow上最受欢迎的问题 second 。但是,很可能它又是由另一个错误引起的。

你最有可能使用旧的丑陋mysql_result()来获取mysql数据 并且不要检查mysql错误 以这种方式做你的mysql

$sql = "SELECT email, status FROM ".$table;
$res = mysql_query($sql) or trigger_error(mysql_error(),"[$sql]");
while ($row = mysql_fetch_array()) {
    echo $row['name']; // assuming "name" field in the data
}

答案 1 :(得分:0)

  

注意:未定义的偏移量:1

这是唯一发生的错误吗?如果这样:

$values = mysql_query("SELECT email, status FROM ".$table."");

失败并且:

$values = mysql_query("SELECT * FROM ".$table."");

成功,你很可能拼写错误的字段名称,因此查询失败,返回非false等非数组资源。

  

警告:无法修改标头信息 - 已由

发送的标头

只是打印出第一个错误的结果。