Rapace15 Posté 2 Juin 2005 Posté 2 Juin 2005 (modifié) 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 Modifié 2 Juin 2005 par Rapace15
Anonymus Posté 2 Juin 2005 Posté 2 Juin 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 Posté 2 Juin 2005 Posté 2 Juin 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 Posté 2 Juin 2005 Auteur Posté 2 Juin 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 Posté 2 Juin 2005 Auteur Posté 2 Juin 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
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant