我正在为涉及XML / XSL的学校开展最终项目,我选择在PHP中完成。我一直在使用XAMPP查看我的网站,一切都运行良好,直到我将所有内容上传到学校网络服务器。我的PHP页面上没有任何错误,它只是在遇到PHP函数调用时停止渲染。我不确定为什么一切都在XAMPP上工作但在Web服务器上没有。如果此问题出现之前,我道歉。我查看了其他问题,但没有找到解决我问题的任何问题。提前谢谢你的期待!
这是我的代码:
XML:
<?xml version="1.0" encoding="utf-8" ?>
<nav>
<item>
<name>Home</name>
<url>index.php</url>
</item>
<item>
<name>What's Inside</name>
<url>about.php</url>
</item>
<item>
<name>Pod Locations</name>
<url>pods.php</url>
</item>
<item>
<name>Trail Map</name>
<url>trail.php</url>
</item>
<item>
<name>Contact Us</name>
<url>contact.php</url>
</item>
</nav>
XSL:
<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<!--
Process XML
-->
<xsl:template match="nav/item">
<li>
<a href="{url}" class='button'><xsl:value-of select="name"/></a>
</li>
</xsl:template>
</xsl:stylesheet>
PHP:
<!DOCTYPE html>
<html>
<head>
<title>Home - CyclePods</title>
<?php require('common/header.php'); ?>
<?php
function processXML($source) {
$xml = new DOMDocument;
$xsl = new DOMDocument;
$process = new XSLTProcessor;
$xml->load('assets/xml/' . $source . '.xml');
$xsl->load('assets/xml/process.xsl');
$process->importStyleSheet($xsl);
echo $process->transformToXML($xml);
}
?>
</head>
<body>
<div class="nav-span">
<div class="nav-row">
</div>
</div>
<div class="banner-back">
<div class="banner-front">
<div class="tabs">
<ul class="horizontal">
<?php processXML('navigation'); ?>
</ul>
</div>
</div>
</div>
<div class="background">
<div class="body">
<div class="row">
</div>
</div>
</div>
</body>
</html>
答案 0 :(得分:0)
原来我的代码是有效的,它只需要更新版本的PHP。将我的项目上传到免费主机(使用最新版本的PHP),它就像一个魅力。