проблема с функцией header()
<?php
header('Content-Type: text/xml');
require_once("../config.php");
$query = mysql_query("SELECT * From `news`");
$row = mysql_fetch_object ($query);
mysql_free_result ($query);
$dom = new DOMDocument();
$response = $dom->createElement('response');
$dom->appendChild($response);
$responseNews = $dom->createElement('responseNews');
$response->appendChild($responseNews);
$n = 0;
while($row)
{
$n ++;
$title = $dom->createElement($row->title);
$responseNews->appendChild($title);
/*$short_news = $dom->createElement($row->short_news);
$responseNews->appendChild($short_news);
/*$news = $dom->createElement($row->news);
$responseNews->appendChild($row->news);*/
if(n>10) break;
}
$xmlDoc = $dom->saveXML();
echo $xmlDoc;
?>
Выдаёт предупреждение:
Warning: Cannot modify header information - headers already sent by
подскажите пожалуйста в чём проблема?
Ошибка сообщает Вам о том что перед заголовком уже были отправлены какие-либо данные, возможно перед <?php у вас есть лишний перевод строки, пробел?
Цитата: Ponomareva_AS
Warning: Cannot modify header information - headers already sent by
здесь же в предупреждении должен быть указан номер строки, где произошёл первый вывод.
output_buffering = 4096 и отправляй заголовки в любом месте скрипта
либо так
Код:
<?php header('Content-Type: text/xml');
require_once("../config.php");
$query = mysql_query("SELECT * From `news`");
$row = mysql_fetch_object ($query);
mysql_free_result ($query);
$dom = new DOMDocument();
$response = $dom->createElement('response');
$dom->appendChild($response);
$responseNews = $dom->createElement('responseNews');
$response->appendChild($responseNews);
$n = 0;
while($row)
{
$n ++;
$title = $dom->createElement($row->title);
$responseNews->appendChild($title);
/*$short_news = $dom->createElement($row->short_news);
$responseNews->appendChild($short_news);
/*$news = $dom->createElement($row->news);
$responseNews->appendChild($row->news);*/
if(n>10) break;
}
$xmlDoc = $dom->saveXML();
echo $xmlDoc;
?>
require_once("../config.php");
$query = mysql_query("SELECT * From `news`");
$row = mysql_fetch_object ($query);
mysql_free_result ($query);
$dom = new DOMDocument();
$response = $dom->createElement('response');
$dom->appendChild($response);
$responseNews = $dom->createElement('responseNews');
$response->appendChild($responseNews);
$n = 0;
while($row)
{
$n ++;
$title = $dom->createElement($row->title);
$responseNews->appendChild($title);
/*$short_news = $dom->createElement($row->short_news);
$responseNews->appendChild($short_news);
/*$news = $dom->createElement($row->news);
$responseNews->appendChild($row->news);*/
if(n>10) break;
}
$xmlDoc = $dom->saveXML();
echo $xmlDoc;
?>
скрипт должен распологаться в самом начале, перед doctype. там же потом meta посылает заголовки
Цитата: vathsven
скрипт должен распологаться в самом начале, перед doctype. там же потом meta посылает заголовки
Не вводите топикстартера в заблуждение. Никакие мета никаких заголовков не посылают.