Je souhaite mettre en ligne un site de type annuaire, seulement j'ai un problème avec la fonction ob_start et l'URL rewriting.
En effet, à l'index de mon site, je charge un template avec le design entier et vient intégrer la partie content avec ob_start().
La je fais un certain nombre de vérifications pour éviter le passage de données bidon en GET.
Entre autre, je vérifie que l'argument ?p="page" appartienne bien à un de mes contenus.
Seulement, quand je suis sur ma page index.php, et que je fais passer certaines infos en GET, comme le choix d'une région et d'un département, ( ?region=votrerégion&p=votredep), et que je l'optimise pour le référencement avec l'url rewriting, j'obtiens www.monsite.fr/votreregion/votredep
Et la, mon code de l'index vérifie si la page votreregion se trouve dans mon dossier content, et m'affiche un message d'erreur.
Pour le choix de la région et du dep j'aimerais rester sur la page index puisqu'ils seront sélectionnés grâce à une animation flash, seulement comment contourner le prob de ob_start???
Ou comment réécrire l'url rewriting???
Voici mon code de la page index.php:
Merci beaucoup!
<?php
$sites = array (
'plan',
'inscription',
'traitement-inscription',
'region',
'departement',
'partenaires-boule',
'plan-site-audition',
'mentions-optique',
);
$page=@$_REQUEST["page"];
if($page=="")
$page="accueil";
if( isset($_GET['page']) &&
in_array($_GET['page'],$sites) &&
file_exists("content/".$_GET['page'].".php") ){
ob_start();
include "content/".$_GET["page"].".php";
$content = ob_get_contents();
ob_end_clean();
include "template.php";
}
elseif(!isset($_GET["page"])){
$_GET["page"] = "index";
ob_start();
include "content/index.php";
$content = ob_get_contents();
ob_end_clean();
include "template.php";
}
else{
$_GET["page"] = "404";
ob_start();
include "content/404.php";
$content = ob_get_contents();
ob_end_clean();
include "template.php";
}
?>