Хочу представить вам свое творение - PerfCMS, версия 2.1.0
Офф. сайт: PerfCMS.NET
PerfCMS - бесплатная система управления содержимым (CMS) написанная на PHP и с открытым исходным кодом.
PerfCMS v2 - создана на базе популярного web-фреймворка Yii (http://yiiframework.com.
PerfCMS имеет достаточный начальный функционал для создания полноценного сайта для, фактически, любых потребностей.
Стандартные характеристики PerfCMS v2.1.0 следующие:
+ Система авторизации / регистрации
+ Восстановление пароля аккаунта через e-mail
+ Мощная админ-панель
+ Форум
+ Мини-чат
+ Новости
+ Диалоги (личная почта)
+ Смайлики
+ BB-теги
+ Мультиязычность
+ Темизации (wap/web/touch)
+ Высокое быстродействие и производительность
+ Высокая гибкость в настройке + Удобное расширению возможностей сайта
+ Модули
+ Виджеты
+ Роли пользователей
+ Блокировка пользователей
+ Установка дополнительных компонентов через админ-панель
+ Многое другое
Системные требования:
PHP >=5.2, PDO-MySQL, ModRewrite
-----------------------
Что нового:
+ Убран шаблонизатор Twig, система шаблонизации переведена на Native PHP
+ Изменена функция рендеринга шаблонов (изменён приоритет вывода)
+ Добавлен "Заголовок сайта", эта функция добавляет уникальность в заголовок сайта, тем самым улучшая SEO-показатели
+ Исправлены ошибки в новостях и форуме
+ В форум добавлена возможность прикрепления файла при создание темы, а также прикрепление файла при редактировании сообщения
+ Исправлены другие ошибки системы
+ Добавлен новый wap-дизайн (by onmast)
-----------------------
[Загрузить PerfCMS 2.1.0] [Обновиться к PerfCMS 2.1.0]
Всё удобно, красиво, своеобразно как-то - на первый взгляд очень даже хорошо - желаю удачи в дальнейшем развитии
02 Фев 2012, 16:48странный там код какой-то по-моему.
посмотри со строки 50 index.php - там же одно и то же делается. зачем там else эти?
или я чего-то не понимаю в этом?
xmikex, Забыл . Ну короче: запрещается продавать, выкладывать подписывая не моим авторством. Запрещается распространять модифицированые версии как офф. версии т.д
02 Фев 2012, 17:18Не плохо, немного подскажу по коду,
[php:1:d49aed2146]define('SYS', realpath(dirname(__FILE__)).'/system');
define('TPL', realpath(dirname(__FILE__)).'/template');
define('ROOT', realpath(dirname(__FILE__)));[/php:1:d49aed2146]
заменить на:
[php:1:d49aed2146]define('ROOT', realpath(dirname(__FILE__)));
define('SYS', ROOT .'/system');
define('TPL', ROOT .'/template');[/php:1:d49aed2146]
Потом, раз используешь роутинг так используй его полностью, а то в htaccess'e полно правил реврайтинга а в конце еще и роутинг.
[php:1:d49aed2146]$ip = trim($_SERVER['REMOTE_ADDR']);[/php:1:d49aed2146] - зачем?
Запросы в бд вида:
[php:1:d49aed2146]$user_q = $db->query("SELECT * FROM `users` WHERE `id` = '". $user_id ."' AND `password` = '".$user_pass."'");
$user = $user_q->fetch();[/php:1:d49aed2146]
Можно ведь сразу:
[php:1:d49aed2146]$user = $db->query("SELECT * FROM `users` WHERE `id` = '". $user_id ."' AND `password` = '".$user_pass."'")->fetch();[/php:1:d49aed2146]
Если движок планируется делать пабличным то ф-ия:
[php:1:d49aed2146]function crypto($var) {
return md5(base64_encode($var) .'_PerfCMS_');
}[/php:1:d49aed2146]
я так понял это шифровка пароля, тогда лучше при установке скрипта, генерировать уникальную соль и записывать её в конфиг и уже оттуда брать.
Проверку email, сайта и других данных лучше заменить функцией filter_var вместо регулярок.