Rapace15 Posted June 2, 2005 Posted June 2, 2005 (edited) Bonjour à tous, Je cherche à gérer les accès sur un site intra où la navigation se fait uniquement avec une page. En fait je n'appelle à chaque fois qu'une page affiche.php?rubrique=xx&article=yy cette page ayant un include de la page voulue. <?php//*********************************************************//// affiche.php//// Page principale du site intranet // // Ce script est appelé pour mettre en forme chaque page du site, // y inclure les bandeau, barre de menu, colonne de gauche, prendre // en compte les différences entre site de travail et site publié, // mettre à jour les liens des pages d'informations développées par //les webmestres délégués...////********************************************************$rub = (isset($_GET['rubrique'])) ? $_GET['rubrique'] : 1;$art = (isset($_GET['article'])) ? $_GET['article'] : 1;// fonction recherchant les variables de la page (lien, titre, données META...)$var_page = def_page($rub,$art);// Définition des headers de la page htmlecho "<HTML lang=fr>\n";echo "<HEAD>\n";echo " <TITLE>MON SITE INTRANET : ".$var_page['Titre']."</TITLE>\n";echo " <META content=\"".$var_page['MotsClefs']."\" name=keywords>\n";echo " <META content=\"".$var_page['Auteur']."\" name=Author>\n";echo " <META http-equiv=Content-Type content=\"text/html; charset=iso-8859-1\">\n";echo " <LINK href=\"styles/mon_style.css\" type=text/css rel=stylesheet>\n";echo " <LINK media=print href=\"styles/mon_style_print.css\" type=text/css rel=stylesheet>\n";echo "</HEAD>\n\n<BODY>\n";// include des éléments standardsecho "<TABLE><tr><td colspan=3>\n";include("include/entete.php");echo "</td></tr><tr><td>\n";include("include/menu_gauche.php");echo " </td><td>\n";// Je fais l'include de ma pageinclude($var_page['lien']);echo " </td><td>\n";include("include/menu_droit.php");echo "</td></tr><tr><td colspan=3>\n";include("include/pied_page.php");echo "</td></tr></table></body></html>\n";?> Or avec cette méthode, le fichier .htaccess n'est pas lu. Quelqu'un aurait-il une solution ? Par avance Merci Edited June 2, 2005 by Rapace15
Anonymus Posted June 2, 2005 Posted June 2, 2005 Bonjour, Si le .htaccess n'est pas lu, ce n'est pas à cause de cette page, ni à cause de cette méthode. Le .htaccess est lu avant tout script php, quelqu'il soit, quoiqu'il dise. Cherches plutot à savoir ce qui cloches dans ton .htaccess, ou ce qui pourrait faire qu'il soit 'zappé'. Anonymus.
Dan Posted June 2, 2005 Posted June 2, 2005 Le .htaccess est lu avant tout script php, quelqu'il soit, quoiqu'il dise. Pour autant que cette page soit accédée avec le protocole http ... sinon le .htaccess n'est pas lu, ce qui est le cas d'un include() Tu peux, si ton hébergeur le permet (si le flag allow_url_fopen est mis à 'true'), faire l'include en appelant la page avec une url complète (avec http://....) Dans ce cas le fichier .htaccess sera lu. Dan
Rapace15 Posted June 2, 2005 Author Posted June 2, 2005 Mon problème, c'est que la page à afficher n'est pas forcément dans le même dossier que affiche.php. Voici un exemple d'arborescence de mon site | affiche.php (file) | .htaccess (file - celui là est lu sans problème) | include (directory - contient mes entêtes et pied de pages) | | entete.php (file) | | pied_page.php (file) | | .... | annuaire (directory - ne doit être accessible que par toto) | | .htaccess (file - celui là n'est pas lu) | | annu.php (fichier inclus dans affiche.php) c'est bien une méthode pour protéger /annuaire/*.* en acces que je souhaiterais.
Rapace15 Posted June 2, 2005 Author Posted June 2, 2005 Tu peux, si ton hébergeur le permet (si le flag allow_url_fopen est mis à 'true'), faire l'include en appelant la page avec une url complète (avec http://....) Dans ce cas le fichier .htaccess sera lu. Dan <{POST_SNAPBACK}> OK, Merci Dan je vais essayez ceci
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now