Archief - MYSQL: MYSQL- > XML foutje

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Morre1977

Legacy Member
ik heb hier een php-file die data uit mijn db haalt en er een xml van maakt.
nu lukt het me wel om de eerste 5 berichten uit mijn db te halen met:

PHP:
<?
$connection = mysql_connect("localhost", "root", "");
mysql_select_db("cms");

$query = "SELECT * FROM news LIMIT 5";
$results = mysql_query($query);

	echo "<?xml version=\"1.0\"?>\n";
	echo "<news>\n";
while($record = mysql_fetch_object($results)){
	echo " <messages>\n";
	echo "  <onderwerp>$record->title</onderwerp>\n";
	echo "  <bericht>$record->content</bericht>\n";
	echo " </messages>\n";
	}
	echo "</news>";

mysql_close($connection);

?>

maar als ik een andere query draai dan lukt het niet:

"SELECT * FROM news ORDER BY id DESC"

vb.

PHP:
<?
$connection = mysql_connect("localhost", "root", "");
mysql_select_db("cms");

$query = "SELECT * FROM news ORDER BY id DESC";
$results = mysql_query($query);

	echo "<?xml version=\"1.0\"?>\n";
	echo "<news>\n";
while($record = mysql_fetch_object($results)){
	echo " <messages>\n";
	echo "  <onderwerp>$record->title</onderwerp>\n";
	echo "  <bericht>$record->content</bericht>\n";
	echo " </messages>\n";
	}
	echo "</news>";

mysql_close($connection);

?>

iemand een idee hoe dit komt?

Incinnerator

Legacy Member
probeer eens al die informatie eerst bij te houden in een variabele

dus $xml .= '<?xml version=\"1.0\"?>\n';
enz

en dan onder het sluiten van uw connectie zet ge

header('Content-Type: text/xml');
echo $xml;

JensDT42

Legacy Member
Definieer eens "lukt niet". Wat gebeurt er precies, of wat gebeurt net niet. Krijg je een foutmelding?

PoMpElSiEn

Legacy Member
ik heb ook een probleem ivm xml

XML-parsefout: XML-declaratie niet aan begin van externe entiteit
Locatie: http://www.c-texx.be/_php/vplayer.php
Regelnummer 1, kolom 2: <?xml version="1.0" encoding="UTF-8"?>
--------^

ik krijg die error :s
PHP:
<?
//XML header zetten
header("Content-type: text/xml");


$sql = mysql_query("SELECT tid,tartiest,ttitel,tduur,tlocatie FROM ctexx_playlist ORDER by tid DESC") or die ("selecteren tracks mislukt<br/> ".mysql_error()."");

$xml_output = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
$xml_output .= "<playlist>\n";


while($data=mysql_fetch_array($sql))
{
        $tid = $data['tid'];
        $tartiest = $data['tartiest'];
        $ttitel = $data['ttitel'];
        $tduur = $data['tduur'];
        $tlocatie = $data['tlocatie'];

        $xml_output .= "\t<song title=\"$ttitel\" artist=\"$tartiest\" duration=\"$tduur\">".$tlocatie."</song>\n";
}

$xml_output .= "</playlist>\n";

echo <<<END
        $xml_output
END;

?>

dJeez

Legacy Member
PoMpElSiEn zei:
ik heb ook een probleem ivm xml

XML-parsefout: XML-declaratie niet aan begin van externe entiteit
Locatie: http://www.c-texx.be/_php/vplayer.php
Regelnummer 1, kolom 2: <?xml version="1.0" encoding="UTF-8"?>
Je hebt een tab staan als eerste karakter van de output, haal dus eens lege regels in je PHP source weg zodat die effectief begint met <?php...

Morre1977

Legacy Member
probleem bij mij is opgelost. blijkbaar werkte het op een andere pc wel gewoon.
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan