Eléphant du PHP |
135 Messages
18 oct. 2006, 08:59
l'exemple montrer dans ton tutoriel n'est pas très explicite...
<?php
if(isset($_GET['page']))
{
include $_GET['page'];
}
else
{
include 'accueil.php';
}
?>
ce code est déjà beaucoup plus logique pour expliquer la faille.
le gnome modifie l'url pour mettre:
avec un code malicieux dedans pour explorer les fichiers présent sur ton site (par exemple).
il y a encore beaucoup de chose à dire, mais l'idée est là.
une technique comme une autre pour avoir la paix avec les gnomes:
$page = isset($_GET['page']) ? $_GET['page'] : null;
switch($page) {
case 'contact':
require_once('contact.php');
break;
default:
require_once('pageParDefaut.php');
break;
}
tu dois savoir aussi qu'il y a une différence entre include* et require*
require* arrête ton script si le fichier n'existe pas tandis que include* continue.
désolé si l'explication paraît bordelique
