<?php function listing($repertoire){ $fichier = array(); if (is_dir($repertoire)){ $dir = opendir($repertoire); //ouvre le repertoire courant désigné par la variable while(false!==($file = readdir($dir))){ //on lit tout et on récupere tout les fichiers dans $file if(!in_array($file, array('.','..'))){ //on eleve le parent et le courant '. et ..' $siteURL="http://www.lesdeglingosdutarmac.fr/test_result"; $page = $file; //sort l'extension du fichier $page = explode('.', $page); $nb = count($page); $nom_fichier = $page[0]; for ($i = 1; $i < $nb-1; $i++){ $nom_fichier .= '.'.$page[$i]; } if(isset($page[1])){ $ext_fichier = $page[$nb-1]; if(!is_file($file)) { $file = '/'.$file; } } else { if(!is_file($file)) { $file = '/'.$file; } //on rajoute un "/" devant les dossier pour qu'ils soient triés au début $ext_fichier = ''; } if($ext_fichier != 'php' and $ext_fichier != 'html') { //utile pour exclure certains types de fichiers à ne pas lister array_push($fichier, $file); } } } } natcasesort($fichier); //la fonction natcasesort( ) est la fonction de tri standard sauf qu'elle ignore la casse echo "<form name='standings' action='" . $siteURL . "/resultsFiles_transform.php? method='POST'>\n"; echo "<select onchange='document.standings.submit()' name='file'=''>"; foreach($fichier as $value) { echo '<option selected="selected">Choisir une course</option><option value="'.$value. '">'.$value. '</option></select></form> '; } } //exemple d'utilisation : listing('.'); //chemin du dossier ?>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionCorrection du code !
Comment faire pour que la page s'actualise et que le XML s'affiche en dessous
et quand je selectionne un autre fichier xml. Le dernier sélectionné s'enlève et que le nouveau sélectionné apparaisse
<? include("./config.php"); ?> <!--HEADER--> <center> <hr color="Red" width="90%" size="1" align="center"> , <? echo $serverName ?>, <? echo $copyright_zeXav ?> <hr color="Red" width="90%" size="1" align="center"> </center> <!--END HEADER--> <?php $file=$_GET['file']; $chemin=$dir_ResultsFiles.$file; include('http://www.lesdeglingosdutarmac.fr/test_result/resultsFiles/ftp.php'); if(file_exists($chemin) and eregi(".xml",$chemin)){ if ((PHP_VERSION>='5')&&extension_loaded('xsl')) require_once('xslt-php4-to-php5.php'); $ficXsl="rFactorParser_zeXav.xsl"; $xh = xslt_create(); //xslt_set_encoding($xh,"ISO-8859-1"); $file=fopen($chemin,"r"); $xml=fread($file,filesize($chemin)); fclose($file); $file=fopen($ficXsl,"r"); $xsl=fread($file,filesize($ficXsl)); fclose($file); $xml=str_replace('encoding="utf-8"','encoding="ISO-8859-1"',$xml); //Caractères à la fin du fichier $xml=ereg_replace("/rFactorXML>.*","/rFactorXML>",$xml); $arguments = array( '/_xml' => $xml, '/_xsl' => $xsl ); $result = xslt_process($xh, 'arg:/_xml', 'arg:/_xsl', NULL, $arguments); if (!$result) { die(printf("<center>! Error present XML file : $chemin --- [%d]: %s !</center>",xslt_errno($xh), xslt_error($xh))); } xslt_free($xh); print "$result"; }else{ die("<center>! Error find XML file : $chemin !</center>"); } ?>
Exactement ça mais un problème est apparu, l'apparition de AAAAA (mes fichiers sont bien encodage UTF8)
<? include("./config.php"); ?> <!--HEADER--> <html> <head> <meta http-equiv="Content-Type" content="text/HTML; charset=utf-8" /> <center> <hr color="Red" width="90%" size="1" align="center"> , <? echo $serverName ?>, <? echo $copyright_zeXav ?> <hr color="Red" width="90%" size="1" align="center"> </center> </head> <!--END HEADER--> <?php $file=$_GET['file']; $chemin=$dir_ResultsFiles.$file; if(file_exists($chemin) and eregi(".xml",$chemin)){ if ((PHP_VERSION>='5')&&extension_loaded('xsl')) require_once('xslt-php4-to-php5.php'); $ficXsl="rFactorParser_zeXav.xsl"; $xh = xslt_create(); //xslt_set_encoding($xh,"ISO-8859-1"); $file=fopen($chemin,"r"); $xml=fread($file,filesize($chemin)); fclose($file); $file=fopen($ficXsl,"r"); $xsl=fread($file,filesize($ficXsl)); fclose($file); $xml=str_replace('encoding="utf-8"','encoding="ISO-8859-1"',$xml); include('http://www.lesdeglingosdutarmac.fr/test_result/resultsFiles/ftp.php'); //Caractères à la fin du fichier $xml=ereg_replace("/rFactorXML>.*","/rFactorXML>",$xml); $arguments = array( '/_xml' => $xml, '/_xsl' => $xsl ); $result = xslt_process($xh, 'arg:/_xml', 'arg:/_xsl', NULL, $arguments); if (!$result) { die(printf("<center>! Error present XML file : $chemin --- [%d]: %s !</center>",xslt_errno($xh), xslt_error($xh))); } xslt_free($xh); print "$result"; }else{ die("<center>! Error find XML file : $chemin !</center>"); } ?> </html>