Форум → Программирование → PHP для идиотов → Поблочная структура сайта
Поблочная структура сайта
Страницы: ← Следующая страница →
-
Здравствуйте!
Прошу всего лишь пару советов.
Суть… Делаю сайт, с самописным форумом и личным кабинетом.
Решил, разделить его поблочно. То есть хедер, например содержится в файле header.php, который находится в папке includes/forms
Его подключаю require_once ко всем файлам.
Форум содержится в папке forum. Для того чтобы подключить, скажем header.php, прописываю переменную path типа $path="../"
А в самом header.php есть и другие require_once, например на регистрацию. Соответственно тут и пригодится переменная $path, чтобы все ссылки работали корректно.
Если я понятно изложил принцип, то вот сообственно…
Может быть я делаю все не так, посоветуйте или дайте что нибудь почитать.
Кроме хедера делю и боди и футер. Содержимое боди находиться в файле content.php
Если вы на главной странице, то в index.php прописываю $content="index";
B содержимое берется из content.php
К тому же наткнулся на мысль - как скрыть папки и доступ к этим самым хедер.пхп и т.д.? -
-
5 декабря 2009 г. 11:53, спустя 2 минуты 53 секунды
Скрыть можно многими способами. Самый простой - разместить их на уровень выше корня виртуального серврера.
К тому же наткнулся на мысль - как скрыть папки и доступ к этим самым хедер.пхп и т.д.?
О чем первые четыре абзаца не понял. Точнее понял, но в чем собственно вопрос? -
5 декабря 2009 г. 12:01, спустя 7 минут 34 секунды
Скрыть можно многими способами. Самый простой - разместить их на уровень выше корня виртуального серврера.
К тому же наткнулся на мысль - как скрыть папки и доступ к этим самым хедер.пхп и т.д.?
О чем первые четыре абзаца не понял. Точнее понял, но в чем собственно вопрос?
В правильном направлении ли я иду, или же такой метод полная ерунда? )) -
5 декабря 2009 г. 12:04, спустя 2 минуты 55 секунд
Вообще это дело вкуса. Но я обычно перехватываю все запросы и направляю на общий обработчик, а в нем уже анализирую url.
В правильном направлении ли я иду, или же такой метод полная ерунда? ))
Решается сразу две проблемы: с доступом к тому чему не надо и с путями для include- они все от одного места.
Ну и про шаблоны Дуд верно заметил. -
5 декабря 2009 г. 12:09, спустя 5 минут
Вообще это дело вкуса. Но я обычно перехватываю все запросы и направляю на общий обработчик, а в нем уже анализирую url.
В правильном направлении ли я иду, или же такой метод полная ерунда? ))
Решается сразу две проблемы: с доступом к тому чему не надо и с путями для include- они все от одного места.
Ну и про шаблоны Дуд верно заметил.
Дуд конечно верно говорит, но мне бы хотелось все сделать своими ручками.)
Если честно - это мой первый проект и это небольшая браузерная игрушка. 60-70% кода готово, но продвигаясь дльше и деля все по папкам наткнулся на проблемы с урлами и код превратился в говно код. Поэтому решил спросить у Вас)
Получается вы создаете файл, в котором анализируете урлы и даете тот или иной кусок туда куда нужно? -
5 декабря 2009 г. 12:17, спустя 8 минут 29 секунд
Вот как, к примеру, выглядит мой index.php
<?
session_start();
$path="";
$_SESSION['content']=''; // Условие для content.php, чтобы вытащить из него содержимое для данной страницы
require_once('includes/forms/begin.php'); // Это для Титла
require_once('includes/forms/global.php'); // Здесь различные таблицы и if'ы
require_once('includes/forms/end.php'); // Ну а это закрытие
?> -
5 декабря 2009 г. 12:43, спустя 26 минут 14 секунд
Скрыть можно многими способами. Самый простой - разместить их на уровень выше корня виртуального серврера.
ололо. А чем .htaccess c deny не подходит? -
5 декабря 2009 г. 15:05, спустя 2 часа 22 минуты 4 секунды
relictx, гы, это ты что, через пользовательский браузер (вернее даже через пользователя) передаешь скрипту параметры для отображения? Зачем тут юзать $_SESSION['content'] ? -
5 декабря 2009 г. 16:26, спустя 1 час 20 минут 42 секунды
relictx, гы, это ты что, через пользовательский браузер (вернее даже через пользователя) передаешь скрипту параметры для отображения? Зачем тут юзать $_SESSION['content'] ?
Обычной переменной лучше? -
5 декабря 2009 г. 16:36, спустя 9 минут 33 секунды
relictx, логичнее минимум. сессиии совсем не для этой хуйня которую ты заюзалСапожник без сапог -
5 декабря 2009 г. 17:03, спустя 27 минут 41 секунду
relictx, логичнее минимум. сессиии совсем не для этой хуйня которую ты заюзал
Спасибо, сейчас как раз весь контент правлю.
А то что на каждой страничке делаю проверку на авторизацаю пользователя и передаю сессии, с целью защитить страницу, не опасно?if(md5(crypt($_SESSION['user'],$_SESSION['password'])) == $_SESSION['SID']) {
header("Location: '".$_SERVER['HTTP_HOST']."'"); -
5 декабря 2009 г. 17:10, спустя 6 минут 15 секунд
И еще парочку вопросов:
1) Каким образом защить файлы скриптов? Например файл проверки на заполнение полей при регистрации или же папка с админскими скриптами - admin?
2) У меня куча sql запросов в content.php. Достаточно ли для защиты приводить их к типу? -
5 декабря 2009 г. 23:55, спустя 6 часов 45 минут 38 секунд
relictx, не знаю как ситуация сейчас, но в целом, СЕССИИ, как сказал Дуд, не для этого предназначены. И вообще, думаю поисковики могут их не схавать нормально, а следовательно, они не получат страницы с определенными параметрами, передаваемыми через сессии.
По поводу "защиты" скриптов, то вставляй в папку .htaccess с полным запретом для всех, либо же в файлах делай проверку на авторизованность (это в случае с админкой). В общем, лучший вариант как по мне, так это предложенный Алексом: один файл-обработчик, остальное нахер посылается, а точнее на этот же обработчик. Все это тем же .htaccess делается. -
6 декабря 2009 г. 7:24, спустя 7 часов 28 минут 50 секунд
защита есть от разного.
- чтобы твои куски страницы нельзя было причитать в обход главного скрипта - закрывай доступ к папке с кусками в .htaccess или храни их вне DocumentRoot
- админку как место повышенной опасности можно также держать в отдельном месте и закрыть доп. паролем через htpasswd и ограничение на IP
- чтобы хитрый хакер не открыл что не положено - контролируй параметры и никогда не делай типа include 'folder/'.$_GET['param']
- от sql-инъекции защищайся через mysql_real_escape_string или через биндинг параметров в PDO.
вобщем в твоем первом посте все достаточно стандартно, косяков нет. я поддерживаю предыдущих товарищей про одну точку входа, но на самом деле — непринципиально.
про апачевский htaccess почитай. описаний море.ιιlllιlllι унц-унц
Страницы: ← Следующая страница →
Пожалуйста, авторизуйтесь, чтобы написать комментарий!