Visualisation du fichier gen_fiche_presse.php
<?php
function startArticle ($parser, $name, $attrs){
switch ($name) {
case "ARTICLE":
// Un nouvel article, il faut passer qqs lignes et créer toute la table
//---------------------------------------------------------------------
echo "\n<tr> <td>";
echo "\n<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"500\" align=\"center\">";
echo "\n<tr>";
echo "\n<td>";
echo "\n<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"275\">";
echo "\n<tr>";
break;
case "TITRE":
echo "\n<td width=\"8\"><img src=\"img/hg_gris.jpg\" width=\"11\" height=\"15\" alt=\"\"/></td>";
echo "\n<td width=\"250\" class=\"bgtiny\">";
break;
case "PARUTION":
echo "\n<td align=\"left\"> <b> Paru le : </b>";
break;
case "PHOTO":
// La photo de ce raid
//--------------------
echo "\n<td><img src=\"img/gauche_gris.jpg\" width=\"5\" height=\"180\"/></td>";
echo "\n<td width=\"180\" align=\"center\"><a href=".array_shift($attrs)."><img border=\"0\" width=\"164\" height=\"134\" src=\"";
break;
case "DESCRIPT":
echo "\n<tr valign=\"top\">";
echo "\n<td align=\"left\">";
break;
}
}
function endArticle ($parser, $name){
switch ($name) {
case "ARTICLE":
echo "\n<tr>";
echo "\n<td></td>";
echo "\n<td colspan=\"2\"><img width=\"550\" height=\"4\" src=\"img/bas_gris.jpg\"/></td>";
echo "\n</tr>";
echo "\n</table>";
echo "\n</td>";
echo "\n</tr>";
echo "\n</table>";
echo "\n</td>";
echo "\n</tr>";
break;
case "PARUTION":
echo "\n<td align=\"right\"><img width=\"1\" height=\"40\" src=\"img/droit_gris.gif\"></td>";
echo "\n</tr>";
break;
case "TITRE":
echo "</td>\n<td align=\"left\"><img src=\"img/dh_gris.jpg\" width=\"7\" height=\"15\" alt=\"\"/></td>";
echo "\n</tr>";
echo "\n</table>";
echo "\n</td>";
echo "\n</tr>";
echo "\n<tr>";
echo "\n<td valign=\"top\"><img width=\"554\" height=\"1\" src=\"img/haut_gris.gif\"/></td>";
echo "\n</tr>";
echo "\n<tr>";
echo "\n <td>";
echo "\n <table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"450\">";
echo "\n <tr valign=\"center\">";
break;
case "DESCRIPT":
echo "</td>";
echo "\n<td><img src=\"img/droit_gris.gif\" width=\"1\" height=\"140\"/></td>";
echo "\n</tr>";
echo "\n</table>";
echo "\n</td>";
echo "\n</tr>";
break;
case "PHOTO":
echo "\"></a></td>";
echo "\n<td>";
echo "\n<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"385\">";
echo "\n<tr valign=\"center\">";
break;
}
}
function cdataArticle ($parser, $data_text){
echo $data_text;
}
function defautArticle (){return true;}
$query_string = getenv("QUERY_STRING");
$query_string = substr($query_string,strpos($query_string, '-')+1,strlen($query_string));
$env_array = split("-", $query_string);
while (list($key, $val) = each($env_array)) {
list($name, $value) = split("=", $val);
$name = urldecode($name);
$value = urldecode($value);
$$name = trim($value) ;
}
// On a une liste d'articles à afficher -> on la parcourt pour générer les fiches une par une.
// Il faut que l'on construise la liste des articles à afficher dans la table
// '' -> tous
// 'amsterdam.lausanne' ... -> ceux qui commencent par ...
//--------------------------------------------------------
if ($articles == '') {
$tab_art = split(',',$articles);
$handle=opendir('./articles/');
$nb_art = 0;
while($currfile=readdir($handle)){
$extension=strtolower(substr(strrchr($currfile,'.'),1));
if ($extension=="xml"){
// On l'ajoute
//------------
$nb_art++;
$tab_art[$nb_art]=$currfile;
}
}
} else {
// On ne prend que les artciles dont le nom de fichier est présent dans les articles demandés
//-------------------------------------------------------------------------------------------
$handle=opendir("./articles/");
$articles = '###,'.$articles.",";
$nb_art = 0;
while($currfile=readdir($handle)){
$extension = strtolower(substr(strrchr($currfile,'.'),1));
$nom_file = ','.strtolower(substr($currfile,0,strlen($currfile) - 5)).',';
if ($extension=="xml" && strpos($articles, $nom_file) != 0){
// On l'ajoute
//------------
$nb_art++;
$tab_art[$nb_art]=$currfile;
}
}
}
if ($nb_art != 0) {
while(list ($key, $val)=each($tab_art)) {
if ($val != '') {
$xmlFile = file("articles/".$val);
$xml_parseur = xml_parser_create();
xml_set_element_handler($xml_parseur, "startArticle", "endArticle");
xml_set_character_data_handler($xml_parseur, "cdataArticle");
foreach($xmlFile as $elem)
{xml_parse($xml_parseur, $elem);}
}
}
}
?>