
05.08.2007, 01:12
|
|
Познавший АНТИЧАТ
Регистрация: 02.06.2006
Сообщений: 1,187
Провел на форуме: 6023777
Репутация:
2642
|
|
Уже не помню, где я выкладовал как избавиться от php-инклуда, решил сделать поудобней + добавил проверку валидности файла и избавление от рекурсии
PHP код:
<?
#(c) NOmeR1
error_reporting(0);
...
function inc($do,$inc,$posle)
{
$bug = $_SERVER['SCRIPT_NAME'];
$bug = preg_replace('/^(.*)\/(.*)\.(.*)$/i','\\2',$bug);
$inc = str_replace('http','',$inc);
$inc = str_replace('ftp','',$inc);
$inc = str_replace(':','',$inc);
$inc = str_replace('/','',$inc);
$inc = str_replace('\\','',$inc);
$inc = str_replace('.','',$inc);
$inc = str_replace($bug,'',$inc);
$inc = htmlspecialchars($inc);
if(file($do.$inc.$posle))
{
include($do.$inc.$posle);
}
else echo 'Файла '.htmlspecialchars($do).$inc.htmlspecialchars($posle).' не существует';
}
...
if($_GET['page']) inc('',$_GET['page'],'.php');
...
?>
Последний раз редактировалось NOmeR1; 18.08.2007 в 15:29..
|
|
|