gpt4 book ai didi

php - 将 mySQL 数据库输出为 XML 的简单 PHP 脚本

转载 作者:行者123 更新时间:2023-11-30 22:57:06 25 4
gpt4 key购买 nike

我正在参加 PHP 的初学者类(class),我正在尝试将 mySQL 数据库作为 XML 输出到网页。数据库名称是fruits,它包含三列:idfruitnamefruitcolor

这是我的代码中的内容,但它没有输出任何内容。我哪里错了?

<?php
require_once "inc/db_connect.php";

if($db){
echo "<p>Connected to Database Successfully</p>";
} elseif(isset($error)){
echo "<p>$error</p>";
}

?>

<?php
$sql = "SELECT id, fruitname , fruitcolor from fruits";
$res = mysql_query($sql);

$xml = new XMLWriter();

$xml->openURI("php://output");
$xml->startDocument();
$xml->setIndent(true);

$xml->startElement('fruits');

while ($row = mysql_fetch_assoc($res)) {
$xml->startElement("id");

$xml->writeAttribute('id', $row['id']);
$xml->writeRaw($row['fruitname']);
$xml->writeRaw($row['fruitcolor']);

$xml->endElement();
}

$xml->endElement();

header('Content-type: text/xml');
$xml->flush();

?>

最佳答案

可能是因为 $xml->openURI("php://output"); 需要是 $xml->openURI("php://stdout");

如果不行,试试我的其他解决方案:

看看XMLWriter::flush

If you opened the writer in memory, this function returns the generated XML buffer, Else, if using URI, this function will write the buffer and return the number of written bytes

尝试将 $xml->openURI("php://output");$xml->openMemory();$xml- 交换>flush();echo $xml->flush();

结果代码:

<?php
require_once "inc/db_connect.php";

if($db){
echo "<p>Connected to Database Successfully</p>";
} elseif(isset($error)){
echo "<p>$error</p>";
}

?>

<?php
$sql = "SELECT id, fruitname , fruitcolor from fruits";
$res = mysql_query($sql);

$xml = new XMLWriter();

$xml->openMemory();
$xml->startDocument();
$xml->setIndent(true);

$xml->startElement('fruits');

while ($row = mysql_fetch_assoc($res)) {
$xml->startElement("id");

$xml->writeAttribute('id', $row['id']);
$xml->writeRaw($row['fruitname']);
$xml->writeRaw($row['fruitcolor']);

$xml->endElement();
}

$xml->endElement();

header('Content-type: text/xml');
echo $xml->flush();

?>

关于php - 将 mySQL 数据库输出为 XML 的简单 PHP 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25832739/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com