Je travaille sur un projet final pour l'école impliquant XML/XSL et j'ai choisi de le faire en PHP. J'ai utilisé XAMPP pour voir mon site web et tout a fonctionné jusqu'à ce que je télécharge tout sur le serveur web de l'école. Je ne reçois aucune erreur sur ma page PHP, il arrête simplement le rendu quand il atteint l'appel de fonction PHP. Je ne sais pas pourquoi tout a fonctionné sur XAMPP mais pas sur le serveur web. Je m'excuse si cette question a déjà été soulevée. J'ai regardé d'autres questions mais je n'ai rien trouvé qui résolve mon problème. Merci d'avance de regarder!Erreur lors du rendu XML/XLS avec PHP?
Voici mon code:
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>
Vérifiez s'il existe une incompatibilité de version de PHP et demandez à l'école l'administration du journal des erreurs. – stwissel
J'ai regardé dedans et ai constaté que je cours 5.5.9 et l'école exécute 5.3.8. Quand j'ai parlé à l'Admin il a dit qu'il "ne communique pas cette information aux étudiants" – srinehart
Je sens ta douleur. Enveloppez votre code dans une tentative d'attraper et d'imprimer l'erreur au navigateur (essayez attraper est argot pour la routine de gestion des erreurs). Vous pouvez utiliser l'ancienne version pour tester. – stwissel