j'ai utilisé une méthode classique pour sécuriser mes includes, mais cela ne marche pas...
Voici mon bout de code :
<?php $page = (!empty($_GET['page'])) ? htmlentities($_GET['page']) : 'index';
// On définit le tableau contenant les pages autorisées
$pageOK = array('index' => 'index.php',
'page1' => 'page1.php',
'page2' => 'page2.php',
'erreur' => 'erreur.php');
// On teste que le paramètre d'url existe et qu'il est bien autorisé
if(!array_key_exists($page, $pageOK)) // s'il n'y a pas le nom de la page dans la tableau => affiche l'accueil du site
include('index.php');
elseif(!is_file($pageOK[$page])) // si le nom de la page existe dans le tableau mais que le fichier correspondant a été effacé => message 404 d'erreur
include('erreur.php');
else // sinon on affiche la page demandée
include($pageOK[$page]);
?>
Pour les pages déclarées dans le tableau, cela fonctionne bien, mais quand je fais un test avec une page qui n'est pas dans le tableau (toto par exemple ouChamp 'toto' inconnu dans field list
Je ne vois pas ce qui cloche !Champ 'page2' inconnu dans field list
Merci de votre aide !