php mysql 生成xml,使用php从mysql db创建xml文件

本文探讨了一位开发者在使用PHP创建XML文件时遇到的问题。页面显示了部分代码文本而非期望的XML输出。通过检查代码片段及提供的解决方案,本文揭示了解决此类问题的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我试图使用php创建一个xml文件。每次我运行代码时,页面都会在屏幕上从某一点以文本形式显示代码。我的代码如下:

if(!$dbconnet = mysql_connect('I took out the details')){

echo"connection failed to the host.";

exit;

}

if (!mysql_select_db('siamsati_db')){

echo"Cannot connect to the database.";

exit;

}

$table_id = 'events';

$query ="SELECT * FROM $table_id";

$dbresult = mysql_query($query, $dbconnect);

$doc = new DomDocument('1.0');

$root = $doc->createElement('root');

$root = $doc->appendChild($root);

while($row = mysql_fetch_assoc($dbresult)){

$ooc = $doc->createElement($table_id);

$occ = $root->appendChild($occ);

foreach ( $row as $fieldname => $fieldvalue){

$child = $doc->createElement($fieldname);

$child = $occ->appendchild($child);

$value = $doc->createTextNode($fieldvalue);

$value = $child->appendChild($value);

}

}

$xml_string = $doc->saveXML();

echo $xml_string;

?>

并且显示的页面显示:

createElement('root'); $root =

$doc->appendChild($root); while($row =

mysql_fetch_assoc($dbresult)){ $ooc =

$doc->createElement($table_id); $occ =

$root->appendChild($occ); foreach (

$row as $fieldname => $fieldvalue){

$child =

$doc->createElement($fieldname);

$child = $occ->appendchild($child);

$value =

$doc->createTextNode($fieldvalue);

$value = $child->appendChild($value);

} } $xml_string = $doc->saveXML();

echo $xml_string; ?>

香港专业教育学院错过了什么。我首先检查了所有引文,认为它们都是正确的,但它们似乎都是正确的。关于我做错什么的任何建议都值得赞赏?

如果执行包含以下内容的页面会发生什么:

读取$root = $doc->createElement(root);的行中>之前是否有?? 这将使PHP解释器切换到HTML模式,并转储随后的所有内容,以提供您发布的输出。 至少我无法想象您使用->作为结束标记编译了PHP。 那太恶心了。

里克你的话很可能是问题,我想不出任何其他可能性。

上面的代码与我所拥有的代码完全相同,只是我在上面的代码的末尾省略了结束标记。 $ root = $ doc-> createElement(root)行中的>之前。

告诉你var_dump($ row); 看看有什么输出?

使用PHP和MySQL生成XML文件-kvcodes.com/2017/03/generate-xml-file-using-php-mysql

将内容类型设置为XML,以便浏览器将其识别为XML。

header("content-type: application/xml; charset=ISO-8859-15" );

在您的代码中将其更改为:

// Set the content type to be XML, so that the browser will   recognise it as XML.

header("content-type: application/xml; charset=ISO-8859-15" );

//"Create" the document.

$doc = new DOMDocument("1.0","ISO-8859-15" );

+++我想你可以做这样的事情

foreach ( $row as $fieldname => $fieldvalue){

?>

=fieldname; ?>

=$fieldvalue; ?>

}

?>

您可以print_r($ row)并使用它更新您的问题吗

在您在此处发布的代码中,缺少初始标记...

世界地图矢量数据可以通过多种网站进行下载。以下是一些提供免费下载世界地图矢量数据的网站: 1. Open Street Map (https://www.openstreetmap.org/): 这个网站可以根据输入的经纬度或手动选定范围来导出目标区域的矢量图。导出的数据格式为osm格式,但只支持矩形范围的地图下载。 2. Geofabrik (http://download.geofabrik.de/): Geofabrik提供按洲际和国家快速下载全国范围的地图数据数据格式支持shape文件格式,包含多个独立图层,如道路、建筑、水域、交通、土地利用分类、自然景观等。数据每天更新一次。 3. bbbike (https://download.bbbike.org/osm/): bbbike提供全球主要的200多个城市的地图数据下载,也可以按照bbox进行下载。该网站还提供全球数据数据格式种类齐全,包括geojson、shp等。 4. GADM (https://gadm.org/index.html): GADM提供按国家或全球下载地图数据的服务。该网站提供多种格式的数据下载。 5. L7 AntV (https://l7.antv.antgroup.com/custom/tools/worldmap): L7 AntV是一个提供标准世界地图矢量数据免费下载的网站。支持多种数据格式下载,包括GeoJSON、KML、JSON、TopJSON、CSV和高清SVG格式等。可以下载中国省、市、县的矢量边界和世界各个国家的矢量边界数据。 以上这些网站都提供了世界地图矢量数据免费下载服务,你可以根据自己的需求选择合适的网站进行下载
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值