Доброго времени суток! Нужен опытный глаз, который глянет и все скажет) Решил сначала все спланировать, а начал я со структуры сайта и папок/файлов. Нужно мнение, чего тут не хватает или что лишнее для реализации этого проекта) Всем, кто поможет большое СПАСИБО и жирный плюс к карме) Огромная просьба....ответить по существу и желательно с обоснованием предложений/замечаний. Интересен вопрос - достаточно ли такой раскладки по файлам для реализации в них описанных функций, либо что-то лучше вынести в отдельные файлы/классы? Спойлер: Шедевар Описание сайта: Блог-> 1. Навигация 2. Страница новостей; 2.1. Страница отдельной новости; 2.2. Комментарии; 2.3. Постраничный вывод новостей; 2.4. Превью новости (картинка) 3. Личный кабинет; 3.1. Регистрация; 3.2. Логин; 3.3. Выход; 3.4. Фото; 3.5. Данные пользователя; 3.6. Личные сообщения; 4. Галерея (фото+видео). _____________________________ База данных-> 1. Таблица news; 1.1. Таблица short_news; 1.2. Таблица comments; 2. Таблица users; 2.1. Таблица message; 3. Таблица gallery. Структура папок-> Site__ | # classes__ \ DB.class.php News.class.php Users.class.php Nav.class.php Templates.class.php # Includes__ \ Classes.inc.php Templates.inc.php All.inc.php # templates__ \ Index.html User.html Login.html Registration.html News.html Gallery.html _______Index.php Описание действия> ■■Index.php Include 'Includes/All.inc.php; ■All.inc.php Include 'icludes/Classes.inc.php'; Include 'includes/Template.inc.php'; ■Classes.inc.php Include 'classes/Nav.class.php'; Include 'classes/Users.class.php'; Include 'classes/DB.class.php'; Include 'classes/Nav.class.php'; ■Templates.inc.php Include 'classes/Templates.class.php;
Если бы ты поместил текст со структурой внутрь ббкода [code], у тебя сохранились бы отступы. Сходу настораживает таблица short_news. Если тебе к каждой новости нужен короткий тизер, лучше сохраняй его прямо в таблице news, но в отдельном поле. Про структуру папок и файлов скажу, что автозагрузка классов сильно облегчает жизнь. Почитай про psr-0 и работай с пространствами имём, которые отображаются на папки. Даже если на данном этапе ты не будешь использовать сторонние компоненты, всё равно пользуйся composer. Это даст тебе +10 к скиллам.
Чем настораживает? Ничего особливо страшного я не вижу, дополнительное поле тоже норм. Хотя я лично склоняюсь к LEFT от самой новости + как раз таки отдельная таблица с приоритетом для выборки.
@Valick если новость содержит html, то отрезание подстроки непредсказуемо портит разметку. Так что не надо. Почему настораживает: потому что связка короткая новость - полная новость строго 1:1 и никак иначе. В чем логика разрезания этой сладкой пары на две таблицы? Хочется джойнов побольше или лишнего кода в приложении? --- Добавлено --- "Обожаю" когда сложности создаются на ровном месте.
Возможно, эта таблица вообще не о том, о чем мы все подумали. --- Добавлено --- Обоснование – отпад Вариация на тему: «идите вы все лесом, я так решил.»
@miketomlin, о чём ты? У @artoodetoo полная и короткая новости 1:1, те короткая новость обязательно присутствует, у кого-то другого это может быть совершенно не так, в чём проблема-то?
@miketomlin про то, что по ТЗ это может быть таблица не для превью. @artoodetoo про то, что лучше добавить поле short: short (DEFAULT NULL) text (NOT NULL) прямо в news.
Ну ОК. Хотя проблем на ровном месте от этого можно отгрести немерено. @ElisDN, думаю, все поняли, о чем artoodetoo
Предлагаю всем успокоиться и не додумывать за ТСа, а подождать его. --- Добавлено --- ...ему придется еще много чего расписать с таким-то подходом к изложению «структуры»