RoMaN444Ik

Рейтинг
77
Регистрация
21.06.2011
Интересы
блоггинг, создание сайтов, администрирование серверов, веб-разработка

Капец! ТС - такой ****

Бесят такие!

Такие сайты не только продавать, их даже на публику показывать позорно! У тебя эту хрень максимум за 10 рублей могут купить!

Капец... Так ТСы типа тебя бесят! Придут и начинают тут приказывать: сделайте, напишите, а сам даже на эту тему не гуглил наверняка! Короче пусть сам делает, либо платит(а вообще лучший вариант - обратно за парту в школу)!

mansursp:
на хостинге в подписи, вордпресс и джумла автоматом устанавливается

Прямо в два клика? ;)

По теме: вам это "для себя" или для профита? Если для профита, то тут годы уходят, а вы хотите за 2 клика... Но если для себя... то тут в два клика точно не обойдется - часок по парится придется...

И вот вам наводка: ucoz, чтобы совсем было все быстро и без забот :)

veterinar:
ну и чем это лучше switch-a ?

1. Скоростью

2. Расширяемостью(планируется для создания CMS)

3. Удобностью и читаемостью кода

Joker-jar:
Если залили шелл, то запустить его уже не возникает проблем. Обчыно, конструкции типа include $_GET['page'] . '.php' опасны из-за возможности, т.н. local/remote inluding. Для защиты используем мною вышеупомянутую функцию basename.

Я так и решил сделать! Вот примерный код:

<?php

$allowed_files = array('index.php', 'member.php', 'search.php', 'comments.php');
if(isset($_GET['page'])) {
$file = basename(trim($_GET['page']));
if(in_array($file, $allowed_files) AND file_exists(MODULES_DIR . $file)) include(MODULES_DIR . $file);
else die('Ошибка'); // Выдаем ошибку - нас пытаются взломать или просто запрашивают несуществующую страницу
} else {
// Тут показываем стандартную страницу(к примеру главную), если параметр page не передан
}
?>

Как-то так 🍿

cryptex:
если ищите именно идеологически-правильный вариант, то я бы делал именно так.

получаете имя акшина/контроллера, экранируете это имя, проверяете существование такого файла и инклюдите (если по-простому, без построения своих иерархий лоадеров, именно классических контроллеров и т.д.). Из основных плюсов: чистота кода и гибкая расширяемость для данного случая.

Для идеальности решения. нужно проверять имя запрашиваемого файла по массиву разрешенных, а то могут залить шелл и вызывать его при помощи данного способа. А на сам файл с массивом поставить самые жесткие права, чтобы вообще изменять ниче нельзя было(но чтобы при этом работало :) )!

В общем - всем спасибо за дискуссию! Вы натолкнули меня на нужную идею!

Помогу решить проблему быстро и качественно. За небольшую денежку. обращаться в ЛС.

Неверную вы нишу для бизнеса выбрали! С такой проблемой как "съехавший дизайн" после переноса сайта может решить любой более менее грамотный вебмастер, так что среди ваших клиентов, в основном - школота... Но это только по дизайну...

А вот про восстановление после взлома - другой разговор, но тут важна тонкость и умение... Эти два умения нужно доказать и только тогда люди потянутся... А ваш нынешний подход, напоминает человека, который только что сам научился править сайты после переноса, и сразу из этого услугу делает... Так у вас ничего не получится...

Payk:
Капец или нет, но это быстрее чем switch...case насколько я знаю.

---------- Добавлено в 16:29 ---------- Предыдущее сообщение было в 16:24 ----------

И кстати:

Загляни в /engine/engine.php, там переключатель модулей на switch...case построен.

Ну... понятно... Короче только так, через switch :)

Всего: 449