1. Новые складчины

    15.12.2017: Шива Введение в Йогу Организация жизни по древним Ведическим и Тантрическими принципам

    13.12.2017: INSTASOFT 3.4.3.5

    13.12.2017: Золотой Актив 7 ( 23-25 сентября 2017)

    11.12.2017: Как есть меньше. Как преодолеть пищевую зависимость

    10.12.2017: В. Сибирцев. Исполнение желаний. Ведические техники

    09.12.2017: Запрещенные Тактики Гипноза

    09.12.2017: В. Зеленин. Как раскрыть свой потенциал и стать настоящим Лидером

    06.12.2017: Игорь Fresh Ковалёв. Алмазная спина. Избавление от болей в шее и спине

    05.12.2017: Парапсихология - 2. ноябрь 2017

    05.12.2017: Довлатов - "Сказка о Золотом Петушке" - вебинары по "сказкам" с реинтеграциями

    05.12.2017: Довлатов - "Аленький цветочек" - вебинары по "сказкам" с реинтеграциями

    03.12.2017: Управление временем и путь в безсмертие.

    01.12.2017: Е.В. Гильбо. Сексопатология. Полный вариант

    28.11.2017: Как принимать важные решения

    25.11.2017: От пешки до ферзя. Правила победы в игре с системой, людьми и самими собой [повтор]

    24.11.2017: Легкий Переход на Сыроедение - Kristins Morana

    22.11.2017: Форбс Р. Блэр. Материализация желаний

    22.11.2017: Форбс Р. Блэр. Материализация желаний. Книга 2

    16.11.2017: Tooligram Professional 2.6.8

    06.11.2017: Эндрю Бил. Подробный атлас тела

    06.11.2017: К.Б. Заболотный.Технологии личного и социального здоровья. октябрь 2017

    25.10.2017: [Евгения Белова] Онлайн-курс "Прибыльный интернет-магазин PRO" от Академии Интернет Бизнеса

    24.10.2017: [RawStudio] Raw&Vegan баланс 2017

    18.10.2017: Довлатов - "Сказка о Золотой Рыбке" - вебинары по "сказкам" с реинтеграциями

    17.10.2017: Секретные практики для молодости и здоровья

    02.10.2017: Простая стратегия форекс на 5 минут

    28.09.2017: П. Колесов. Практика Самогипноза 3 (с VIP-блоком). Техники СамоИсцеления и Работы с Болью

    23.09.2017: The Nаturаl от RSD Mаx

    23.09.2017: Что случилось с искусством за последние 100 лет — короче, Современность!

    23.09.2017: Смертельно опасные лекарства и организованная преступность

    23.09.2017: Жизнь после антибиотиков. Чем нам грозит устойчивость бактерий к антибиотикам и нарушение микрофлор

    23.09.2017: Поймай меня, если сможешь. Реальная история самого неуловимого мошенника

    23.09.2017: Лаборатория хакера

    23.09.2017: Психосоматика от Яны Лан

    23.09.2017: Леш, Фердер: Кинезиология. От стресса к гармонии

    23.09.2017: Все о сайтах знакомств, или как найти Принца. Левчук и Ssfat

    23.09.2017: Вед.астрология - совместимость в отношениях

    23.09.2017: Научись делать баннеры

    23.09.2017: Упражнения по системе Ниши – Гогулан. Как включить естественные механизмы очищения

    23.09.2017: Система Майи Гогулан для здоровья женщин

    23.09.2017: Для тех, кому за 40. Живем до 120 лет! Питание, упражнения, советы

    23.09.2017: Счастливая семья: Как ее создать и укрепить. Ключников

    23.09.2017: От идеи до яркого текста. Тексты, которые цепляют

    20.09.2017: А. Дмитриева. Гипносессия для проработки травм детства от 19 сент. 2017

    13.09.2017: Собственный рабочий проект жилого дома

    13.09.2017: Бразильская попка за 3 месяца

    10.09.2017: Программа для рассылки сообщений Вайбер - Mass Advert Pro 3 2017

    09.09.2017: Тамир Шихалиев. Нокаутирующий удар за 1 месяц

    04.09.2017: Заболевания глаз. Лечение зрения методами традиционной китайской медицины

    04.09.2017: Копилка классного руководителя

    04.09.2017: Видеоразборки от Михаила Церетьяна - MEET JOE BLACK workshop

    04.09.2017: Как обеспечить успех переговоров до их начала

    04.09.2017: Сталкер сновидений

    03.09.2017: Юрий Черников. Идеологический бизнес. Начало (Продукт + Транскрибация) Часть 1

    02.09.2017: МЦО. Программа омоложения №1. Обратный отсчет. Минус 7 лет

    25.08.2017: Точность лидера в управлении Бизнесом (резиденс на острове Сардиния)

    22.08.2017: Рецепт настоящего коньяка ускоренного приготовления без потери качества ( п'ять лет выдержки за 6

    15.08.2017: Как купить себе квартиру в новостройке

    14.08.2017: Долги и Кредиты

    13.08.2017: Тренинг Логика рыночных цен от А до Я

  2. Нужен организатор

    15.12.2017: Шива Введение в Йогу Организация жизни по древним Ведическим и Тантрическими принципам

    03.12.2017: Управление временем и путь в безсмертие.

    24.11.2017: Легкий Переход на Сыроедение - Kristins Morana

    25.10.2017: [Евгения Белова] Онлайн-курс "Прибыльный интернет-магазин PRO" от Академии Интернет Бизнеса

    24.10.2017: [RawStudio] Raw&Vegan баланс 2017

    17.10.2017: Секретные практики для молодости и здоровья

    22.08.2017: Рецепт настоящего коньяка ускоренного приготовления без потери качества ( п'ять лет выдержки за 6

    15.06.2017: Интенсив по заработку на фрилансе

    14.05.2017: Кукла от известного автора

    28.03.2017: Рецепты для диеты - книга

    03.03.2017: Торт-раскраска

    15.08.2016: В каждом ребенке солнце

    15.08.2016: Испания. Гастрономия

    15.08.2016: Книги по китайской медицине. Часть 2.

    15.08.2016: Логотип и фирменный стиль. Руководство дизайнера

    15.08.2016: Налоги за 14 дней. Экспресс-курс. Новое, 14-е изд.

    15.08.2016: Голубая точка. Космическое будущее человечества

    15.08.2016: Бесплодие — диагноз или приговор

    15.08.2016: Руководство по самоисцелению

    15.08.2016: Хорошие девочки отправляются на небеса, а плохие – куда захотят

    15.08.2016: Гипноз и другие фишки на сайте или секреты продающих сайтов

    03.08.2016: Любовная Совместимость. Методика Разведчиков

    19.01.2016: Ментальный курс от Александра Росса

    25.08.2014: IonCube v8.3 Decoder + PHP Script Auto-Fixer

  3. Сбор взносов

    28.11.2017: Как принимать важные решения

    25.11.2017: От пешки до ферзя. Правила победы в игре с системой, людьми и самими собой [повтор]

    02.10.2017: Простая стратегия форекс на 5 минут

    23.09.2017: The Nаturаl от RSD Mаx

    23.09.2017: Что случилось с искусством за последние 100 лет — короче, Современность!

    23.09.2017: Смертельно опасные лекарства и организованная преступность

    23.09.2017: Жизнь после антибиотиков. Чем нам грозит устойчивость бактерий к антибиотикам и нарушение микрофлор

    23.09.2017: Поймай меня, если сможешь. Реальная история самого неуловимого мошенника

    23.09.2017: Лаборатория хакера

    23.09.2017: Психосоматика от Яны Лан

    23.09.2017: Леш, Фердер: Кинезиология. От стресса к гармонии

    23.09.2017: Все о сайтах знакомств, или как найти Принца. Левчук и Ssfat

    23.09.2017: Вед.астрология - совместимость в отношениях

    23.09.2017: Научись делать баннеры

    23.09.2017: Упражнения по системе Ниши – Гогулан. Как включить естественные механизмы очищения

    23.09.2017: Система Майи Гогулан для здоровья женщин

    23.09.2017: Для тех, кому за 40. Живем до 120 лет! Питание, упражнения, советы

    23.09.2017: Счастливая семья: Как ее создать и укрепить. Ключников

    23.09.2017: От идеи до яркого текста. Тексты, которые цепляют

    26.07.2017: Как понять мужчину и разгадать женщину

Файловая БД

Опубликовано Kuiper. Блог Kuiper. Просмотры: 270

Уф, 7 часов почти непрерывно возился, но смог сделать первые важные шаги по созданию блоговой CMS.
Первым делом нужно было надежно написать маршрутизацию всех запросов к скрипту, чтобы и XSS с PHP-inj фильтровались, и нужные страницы отображались.

Сам код, где берется $_SERVER["REQUEST_URI"], т.е. запрос к сайту, и затем сравнивается с изначально заданными страницами, это не очень сложно. Сложнее было настроить .htaccess на Денвере. Я почему-то думал, что на локали, на Денвере в Windows htaccess-файл создается как htaccess.txt и, вроде бы, он даже работал, когда я его создавал для других локальных скриптов. Но помучившись с mod_rewrite, который включен в Apache2, а у меня в маршрутизаторе, т.е. Front Controller не пашет, методом научного тыка понял, что нужно создавать файл .htaccess, причем, именно в Блокноте, т.к. мой любимый NotePad++ не умеет сохранять такие имена файлов, а Блокнот умеет. И лишь после этого htaccess начал работать.

Сам .htaccess тоже оптимизировал, я вообще с его синтаксисом не очень дружу, очень редко что-то нужно сделать, поэтому оптимизировал код до 4 строк (кому нужно тоже - это код для перенаправления всех запросов к сайту на скрипт index.php):

Код:
[ Only registered users can see the bbcode. Click Here To Register... ]
IfModule можно было тоже не писать, но так надежнее, хотя в скрипте у меня первым делом идет проверка доступности mod_rewrite на сервере или хостинге, где запускается скрипт Kuiper CMS.

Идем дальше, переходим к MVC и классам.
Решил закрепить знания по ООП и SQL, поэтому вместо простого использования MySQL решил делать CMS на файлах.

Причин использовать "файловую БД" две:
- закрепляю знания по работе с данными, "изобретая" вновь методы выборки, редактирования и удаления записей в массивах информации (не в array(), а в больших объемах упорядоченных данных),
- пользователю моей CMS нужно будет сделать меньше действий, т.к. ему не нужно будет создавать базу данных, достаточно лишь подключиться по FTP к серверу или хостингу, скопировать файлы, поставить права 777 на папку db/ и 666 на файл settings.php, а после установки CMS поставить права 644 на settings.php и удалить файл install.php.

Кроме того, есть такие хостинги с тарифами, где разрешен PHP, но не разрешено использование MySQL, либо сервер БД очень глючный и часто падает. Обычно это тарифы хостинга с приятными низкими ценами.

Минус файловой БД в том, что при больших нагрузках такая CMS будет работать медленнее, но Kuiper CMS - это блоговая CMS, которую создает новичок, поэтому под хайлоад она не будет использоваться ))
Хотя, кто знает, может именно эта CMS вырастет во что-то большее, чем просто проект для портфолио.


Наверное, вам не очень интересно читать все эти подробности, буду выделять такие записи специальной пометкой "Программирование", т.к. нет тегов или категорий.
А для меня такие записи очень полезны, т.к. я еще раз мысленно прохожу по изученному и сделанному, это помогает закрепить знания и навыки в долговременную память, пока они не "стерлись" из краткосрочной памяти.
inferno нравится это.
Вам необходимо войти для комментирования