2013-09-27 2 views
0

J'ai oublié de poser ma question ici: PHP Dynamic Include Help on Index.php?Répertoire avec PHP Inclure

Comment puis-je faire si les répertoires sont utilisés avec php comprend? Par exemple. Je veux renommer page2 en règles, puis mettre le fichier rules.php dans un dossier appelé/rules /, donc c'est maintenant /rules/rules.php

Par conséquent, la nouvelle URL serait quelque chose comme index.php ? category = rules & id = rules

Voici le nouveau code.

<?php 
    $page=''; 
    if (isset($_GET['id'])){ 
    $page = $_GET['id']; 
    } 
    $pageArray = array('index','css-pub1','page2','page3','page4','page5','page6'); 
    $inArray = in_array($page, $pageArray); 
    if ($inArray == true) { 
    include(''. $page .'.php'); 
    } 
    else { 
    include('main.php'); 
    } 
    ?> 
+1

C'est un horriblement exemple stupidly insecure, mais ... 'include ($ _ GET ['category']. '/'. $ _GET ['id']. '.php')' –

+0

Il peut rendre cela plus sûr en ayant un 'in_array similaire() 'vérifier les catégories. – Barmar

+0

Problème est que je n'ai aucune idée de comment faire tout cela :(. –

Répondre

0

cela devrait le faire, mais pour le rendre plus vous assurer hace pour vérifier la page de catégorie deux existance avant la include (et peut-être vous devriez utiliser include_once à la place)

<?php 
$page=''; 
if (isset($_GET['id'])){ 
    $page = $_GET['id']; 
} 
if (isset($_GET['category'])){ 
    $category = $_GET['category']; 
} 
$pageArray = array('index','css-pub1','page2','page3','page4','page5','page6'); 
$categoryArray = array('cat1','cat2','cat32'); 

$inArrayPage = in_array($page, $pageArray); 
$inArrayCategory = in_array($category, $categoryArray); 
if ($inArray && $inArrayCategory) { 
    include(''. $page .'/'.$category.'.php'); 
} 
else { 
    include('main.php'); 
} 
?> 
+0

Voulez-vous dire assurez-vous que ces catégories et les pages existent? Juste pour élaborer –

+0

oui, par exemple: 'category = rules & id = rules' est un paire valide mais 'category = pièces auto & id = rules' n'est pas – torresmateo

+0

J'ai essayé votre méthode ci-dessus, mais quand je vais à index.php? category = rules & id = rules, il apparaît avec le contenu de main.php –