Профиль пользователя заблокирован сроком с 26 июня 2017 г. и навсегда по причине: систематические нарушения регламента работы сервиса: размещение нецензурной лексики; оскорбления в адрес пользователей, модераторов и специалистов службы поддержки
> Правда вот тема этого вопроса все ще под вопросом )
какая тема? htmlspecialchars нужен только при выводе символов в шаблон. что бы все символы, которые используются в HTML, были представлены как мнемоники, те. кодом.
а тема безопасности ОЧЕНЬ подробно описана на phpfaq.ru
там, по сути, описано все, что бы научиться писать нормальные программы начинающего уровня
в сингелтоне не должно храниться соединение, оно должно храниться в объекте. иначе нельзя создать еще одно соединение.
и причем тут query builder вообще?
> "писать свое", когда есть идеально подходящие готовые, проверенные решения - это считается не только бессмысленной тратой времени, но еще и дурным тоном.
давно программирование стало дурным тоном? Мне всегда казалось, что дурной тон - это когда человек нихера не знает, даже основ, и сразу же за библиотеки и фреймворки хватается.
ему 17 (!!!!!) лет
он сейчас ДОЛЖЕН писать свое, что бы набивать руку
зачем вы его на неверный путь ставите?
> А такой момент как регистрация/аутентификация/авторизация/.. слишком критичен, чтобы в нем могли быть ошибки новичка.
регистрация/аутентификация/авторизация/ на php делается элементарно, для этого достаточно знаний, описанных на phpfaq.ru
нет, давайте человеку посоветуем готовое решение, что бы он окончательно ничего не понял и ничему не научился
> придется множество запросов делать к БД, а это зело медленно. Чем глубже вложенность - тем медленнее будет работать.
Не придется. Пишем cron-скрипт, который раз в Н минут/часов/дней ходит по дереву и записывает для каждой категории, например, всех её прямых и всех потомков. Тем самым при каждом запросе пользователя в разы сократится кол-во запросов, т.к. искать все подчиненные можно будет одним запросом, а сортировать уже на уровне php.
PDO можно выкинуть только за то, невозможно получить SQL для отладки с подставленными в запрос параметрами, что бы тупо его скопировать в редактор и понять, почему он не работает.
написал челок, который сам судя по всему никогда не "прогорал" на своих прожЭктах
иначе бы вы не писали так оптимистично о годах работы, засунуты в опу
D' Normalization: >>На странице Х есть форма заявки, нужно:
- Вынести эту форму на отдельную страницу
- Добавить Х полей и валидацию к ним
- Форму сабмитить по старому адресу, но ответ сервера теперь такой: {...}
- Если с сервера приходит Х, нужно показать сообщение об ошибке.
- Если приходит Y, нужно редиректить человека по линку указанному в ответе.
вот из-за подобных говноархитектур и рождается говнокод.
nixwins: хз....
почитай про "инверсия зависимостей"
не должны твои классы инстанцировать в себе такие глобальные вещи как объекты БД
их надо туда передавать
хоть через конструктор
хоть через метод
сделай фабрику создания моделей, которая объект БД будет туда впрыскивать
много вариантов
но блиа, require 'core/database.php' в классе или в конструкторе - это же Ад и погибель.
Ты же пространства имен пользуешь.
nixwins: подойдет или нет - покажет реальная практика разработки на твоей АР
я задолбался свою реализацию DataMapper писать, если честно
много подводных камней, но практика оч хорошая
я еще раз говорю - посмотри на паттерн DataMapper
AR плох тем, что ты смешаешь в кучу SQL и бизнес-логику твоих объектов
в конструктуре не должно быть вызовов к базе и тем более incude
в конструктор передавай объект БД
для этого нужен какой-то слой, который создает объекты с уже впрыснутым объектом БД
Илья: > Такое чувство, что просто программисты взяли и от скуки придумали ООП и паттерны
Ты не поймешь этого до тех пор, пока не будешь решать реальные задачи, т.е. писать много кода. НЕЛЬЗЯ, НЕВОЗМОЖНО взять и понять за один раз все преимущества ООП - ты должен сначала написать пару десятков тысяч строк кода, столкнуться со своей гнилой архитектурой, испытать на себе сложности этой индустрии и тогда до тебя хоть что-от дойдет.
какая тема? htmlspecialchars нужен только при выводе символов в шаблон. что бы все символы, которые используются в HTML, были представлены как мнемоники, те. кодом.
а тема безопасности ОЧЕНЬ подробно описана на phpfaq.ru
там, по сути, описано все, что бы научиться писать нормальные программы начинающего уровня