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

    18.08.2017: Закрытая. Интенсив марафон по трансерфингу

    18.08.2017: Колдунам

    18.08.2017: Молодое лицо для каждого

    18.08.2017: Сакральная архитектура тела

    18.08.2017: Рецепт торта-3

    18.08.2017: Энерджи:Практика.Любовная магия(ВИП)

    18.08.2017: ВИП Пакеты программ - Мозг | Бизнес | Закон притяжения | Улучшение жизни | Деньги и Процветание

    18.08.2017: Очистка от паразитов Ast

    18.08.2017: Финансовое изобилие

    18.08.2017: Новый омолаживающий курс для лица и тела

    18.08.2017: Учимся манифестировать деньги

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

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

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

    14.08.2017: Школа диетологов профи

    14.08.2017: Я не жертва! Как жить счастливой жизнью! (Оксана Илечко)

    14.08.2017: Противостояние манипуляции в межличностном общении и в переговорах (Ирина Телегина)

    14.08.2017: Психодайвинг: 1 семинар - "Кое-что о флирте" А. Капранов

    14.08.2017: Два практических занятия для тех, кто любит померяться полем!

    14.08.2017: Метрический справочник. Данные для архитектурного проектирования и расчета

    14.08.2017: Уроки нескромности 2. Холоденко

    14.08.2017: Мосякин - Бренд своими руками

    14.08.2017: Восстановление Windows

    14.08.2017: [Кoндитерка] Торты. Кoндитерка

    13.08.2017: Молодость и новые зубы

    13.08.2017: Закрытая. Метод. Обновление. Деньги.

    13.08.2017: Астрология. Фиксированные звёзды

    13.08.2017: Одна валюта, точное время входа. 100% сделок в плюс

    13.08.2017: Мгновенный гипноз. Марков

    13.08.2017: Как переехать в другую страну & Как изменить свою жизнь

    13.08.2017: Брак и безбрачие в астрологии

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

    13.08.2017: Магия влюбления + Бонусы. Бахтиозина

    13.08.2017: Photoshop для видеографа

    13.08.2017: Секреты здоровья, денег, везения в 2017 году

    13.08.2017: Магия женской речи. Как правильно общаться с мужчиной

    13.08.2017: Формула души

    13.08.2017: Путь Блогера. От новичка до профи

    13.08.2017: Ораторские упражнения. Кукушкин

    13.08.2017: От 499$ в месяц на услугах иностранцев

    13.08.2017: БроБот 2016.07.13

    13.08.2017: swSpyBrowser - интернет мультибраузер в каждой вкладке свои cookies, useragent и IP-адрес

    13.08.2017: InstaTool Pro 1.6.9.7

    13.08.2017: Tooligram Professional 2.6.8

    13.08.2017: Трофейный Снайпер - Экстремальная техника соблазнения!

    13.08.2017: А вы боитесь людей? Как побороть социофобию

    13.08.2017: Волшебство близких отношений

    13.08.2017: Как писать прозу: теория и практика

    13.08.2017: Омоложение. Закрытая

    12.08.2017: Александром Приходько - Тренинг "Моделирование совершенства"

    11.08.2017: [МИФ] Джиллиан Райли - Как есть меньше

    11.08.2017: Умное дополнение для фотографа

    11.08.2017: Восстановление "живого" иммунитета.

    11.08.2017: Простукивание (Полузакрытая)

    11.08.2017: Волшебство для жизни

    11.08.2017: Все в одном месте (пластика и глина)

    11.08.2017: А. Маматов. Прыжок в молодость. июнь 2017

    10.08.2017: Вебинары К. Довлатова по "сказкам" с реинтеграциями

    09.08.2017: Элитный курс «Психология и психофизиология питания»

    31.07.2017: Кaк всегo зa 7 дней устaнoвить тишину, пoрядoк и пoслушaние в доме?

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

    18.08.2017: Молодое лицо для каждого

    18.08.2017: Новый омолаживающий курс для лица и тела

    14.08.2017: Восстановление Windows

    10.08.2017: Вебинары К. Довлатова по "сказкам" с реинтеграциями

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

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

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

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

    13.04.2017: Сергей Домогацкий - Путь

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

    27.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

Файловая БД

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

Уф, 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 нравится это.
Вам необходимо войти для комментирования