То бишь в настройках модуля поля, требующие определённого типа данных, которые должен возвращать компонент другого модуля? Этот вариант действительно сработает, но только если тип статичен. То есть например у товара именно int id а не varchar и прочее..
для этого и нужны интерфейсы, чтобы задать поведение. ZLOI_DED:
Не надо ORM
а разве это не позволяет сделать то что ты хочешь?
Ну а как иначе? Всеравно какие-то интерфейсы они должны иметь. Чтобы помещать товары в корзину, товары должны как-то обозначатся и юзеры, к которым в корзину товар этот помещается тоже... Тут у меня затык.
просто сделай зависимости, пускай модуль говорит что ему нужно, например для корзины UserModule, ProductModule. Вот и все. Если их нету, то крашай модуль. ZLOI_DED:
Просто никогда не делай) Если хочешь сервер для чата? То спроси себя зачем тебе сервер для чата? Ведь он спокойно делается дедовским методом на аяксе.
Да. Конечно. Это же динамичный парсинг. В этот раз это вернёт true, в другой - false.
не обязательно компилировать в статичный текст ;) компилируй в чистый php ZLOI_DED:
никогда не делай сервер на PHP, который например работает через php-cli.
смотря какой сервер. Если сервер для чата, то почему бы и нет? Хотя честно я не знаю какое решение мне приглянулось, но для простых задач я бы заюзал это решение. А так сокетный код я пишу на шарпах. ZLOI_DED:
Хех. Вот тут ты понимаешь, что без фунта 160 градусного саке это не поднять)
сперва локально, а потом еще накатить чтобы заработало на альфе :D
Хмм... можно. Тогда придётся припилить ограничение по айпи по времени, чтобы не спамили.
Не знаю. У меня помечено... Вообщем посмотрю.
именно на логин, на регистрации пусть будет. Чтобы не спамили давай 5 попыток, потом блокируй на час. ZLOI_DED:
Про DI и IoC читал, когда яву изучать начал. Как раз чисто идеологически, здесь огромная беда. Сам подумай. Как ты хочешь делать корзину для интернет-магазина, когда она зависит от двух разных вещей? 1) система юзеров 2) система товаров
в этом все и дело, что по сути они не должны знать об имплементации ничего. А вот поведение это вполне такая общая штука. ZLOI_DED:
Всмысле статично?
построено на статических методах -> нельзя отнаследоваться и переопределить методы, чтобы реализовать доп. поведение или изменить вовсе. ZLOI_DED:
Всмысле некомпилируемый?
он у тебя вроде как каждый раз парсится и выполняется ZLOI_DED:
В цмсине её нет... это модуль. А так, админа создаём через инсталлятор.
а как ты создаешь юзера тогда, если модуль создания юзеров отдельный? странности
у нас на работе был забавный случай.
Модуль создания текущего контекста требовал параметры подключения к базе кастомера. При этом эта строка бралась из текущего контекста, которая должна была получится во время выбора кастомера. А текущий контекст создавался уже после авторизации юзера, которая требовала параметры, чтобы получить список юзеров и т.д. Вот такая вот цикличная зависимость. Но вроде там сейчас что-то порефакторили и все почти круто)
Про автоинкремент:
таблица юзеров, у тебя первичный ключ как обычное поле. Почему не помечено, как auto increment ZLOI_DED:
Покажешь потом?
как будет, что показать обязательно
Про криптоалгоритм:
почему бы не сделать доп. поле в базе для юзеров salt и для шифровки юзать такой алгоритм
md5($salt . reverse($pass . $salt))
я еще не закончил твой код смотреть) Так и не нашел где функция создания юзера. ZLOI_DED:
Знаю что реализация модульности - фигня
вот как раз таки модульность реализована достаточно интересно. И установка и удаление и почти не зависимы от других. Хотя советую почитать про DI и IoC + Unity, по крайней мере с другим я не работал.
Дошел до шаблонизатора. Ну что сказать, мало того что он какой то странный, так он еще и не компилируемый... Задумайся над этим (время компиляции и все такое).
Поэтому в далеком будущем хочу прикрутить для ХГМ что-то типа API, чтобы можно было делать игры с базой игроков на основе юзеров сайта (хеллкор начинал делать подобие, но что-то пошло не так)
еще не особо осознал, почему все статично. Когда я делал WoE то у меня большинство было статичным. Но потом я осознал проблему данного решения
Сайт рабочий, а вот ты просто слепой. На главной специально сказано для таких как ты: "Хотим обратить внимание, что сайт всё ещё находится в разработке."
Да мне лишь бы только потыкать было куда. Да и зачем тогда тяп ляп и в продакшен? Мой вот до сих пор только локально гуляет и немного на альфе.
А так код посмотрел. Ну в целом, ладно не плохо, но шаблонизатор скучный, так же как и роутинг, да и от mvc ты немного местами отъехал. Ну и еще пару советов:
попробуй бутстрап, он не так вырви глазно смотрится
убери проверку при обычном входе
добавить подтверждение пароля
почему ты не юзаешь автоинкремент?
Защита от XSS хитра, но в тоже время стара и может привести к непредвиденным последствиям, знай это
твой криптоалгоритм не надежный, есть более надежные и простые способы
H, сейчас берется либо дата создания, либо дата последнего коммента. В зависимотсти от наличия комментов, а надо брать в зависимости от того, какая дата новее
» Space Station 133D / Space Station 133D
» Space Station 133D / Space Station 133D
ZLOI_DED:
Ред. alexprey
» Space Station 133D / Space Station 133D
ZLOI_DED:
ZLOI_DED:
Ред. alexprey
» Space Station 133D / Space Station 133D
ZLOI_DED:
ZLOI_DED:
» Space Station 133D / Space Station 133D
ZLOI_DED:
ZLOI_DED:
ZLOI_DED:
ZLOI_DED:
у нас на работе был забавный случай.
Модуль создания текущего контекста требовал параметры подключения к базе кастомера. При этом эта строка бралась из текущего контекста, которая должна была получится во время выбора кастомера. А текущий контекст создавался уже после авторизации юзера, которая требовала параметры, чтобы получить список юзеров и т.д. Вот такая вот цикличная зависимость. Но вроде там сейчас что-то порефакторили и все почти круто)
» Space Station 133D / Space Station 133D
таблица юзеров, у тебя первичный ключ как обычное поле. Почему не помечено, как auto increment
ZLOI_DED:
Про криптоалгоритм:
почему бы не сделать доп. поле в базе для юзеров salt и для шифровки юзать такой алгоритм
md5($salt . reverse($pass . $salt))
ZLOI_DED:
Ред. alexprey
» Space Station 133D / Space Station 133D
А так код посмотрел. Ну в целом, ладно не плохо, но шаблонизатор скучный, так же как и роутинг, да и от mvc ты немного местами отъехал. Ну и еще пару советов:
» Space Station 133D / Space Station 133D
» Space Station 133D / Space Station 133D
» Блог им. AlexPrey'я / XGM Update Log
» Блог им. AlexPrey'я / XGM Update Log
Ред. alexprey
» Dota 2 / Dota 2 Hammer Editor
Ред. alexprey
» WarCraft 3 / Вселенная WarCraft
» Блог им. AlexPrey'я / XGM Update Log
» WarCraft 3 / Возможно ли вытаскивание моделей из WoW без клиента
» WarCraft 3 / Возможно ли вытаскивание моделей из WoW без клиента
» Блог Palixa / Фигурка Arthas "Lich King"
» nDRch / На перепутье семи дорог...
alexprey:
» Блог им. AlexPrey'я / XGM Update Log
» Блог им. AlexPrey'я / XGM Update Log
» nDRch / На перепутье семи дорог...
» Unity / Бета-версия Unity 4.6 в открытом доступе!
» Блог им. AlexPrey'я / XGM Update Log
» Блог им. AlexPrey'я / XGM Update Log
» Блог им. AlexPrey'я / XGM Update Log