1. mrBroot - 08 Апреля, 2014 - 16:46:58 - перейти к сообщению
Покажите путь истинный, изучаю php, много чего уже вышло из под моего пера, в основном небольшие скрипты на фрилансе... и везде я использовал процедурный подход... Сейчас начал изучать ООП, и вот незадача... я знаю как создавать классы, как наследоваться, что такое методы поля и свойства, что такое экземпляр класса, представляю что такое паттерны проектирования... но вот как правильно, как это должно выглядеть? Как правильно пользоваться всем вот этим... где можно посмотреть? Вообщем нехватает какой-то мелочи в моих знаниях...
2. 3d_killer - 08 Апреля, 2014 - 16:54:56 - перейти к сообщению
ООП не мелочь
3. OrmaJever - 08 Апреля, 2014 - 17:01:28 - перейти к сообщению
мне кажется самый простой и понятный пример где функции можно заменить на класс есть mysqli.
4. DelphinPRO - 08 Апреля, 2014 - 18:04:59 - перейти к сообщению
mrBroot пишет:
Вообщем нехватает какой-то мелочи в моих знаниях...
Ага, совсем немножко всего-то 500 с небольшим страниц из книги "PHP. Объекты, шаблоны и методики программирования" Мэтта Зандстры
(Добавление)
вот, я даже не поленился, ссылочку вам нашел на эту книжку
http://www[dot]ozon[dot]ru/context/detail/id/5648968/
5. mrBroot - 09 Апреля, 2014 - 07:26:42 - перейти к сообщению
DelphinPRO пишет:
вот, я даже не поленился, ссылочку вам нашел на эту книжку
http://www[dot]ozon[dot]ru/context/detail/id/5648968/
http://www[dot]ozon[dot]ru/context/detail/id/5648968/
За ссылочку спасибо... у меня такая уже есть... вот Вам бесплатный вариант http://www[dot]proklondike[dot]com/books[dot][dot][dot]ra_PHP_2011[dot]html
Я вопрос задал, с целью хотя бы представить, как все это должно выглядеть... можно на обычном примере, авторизация пользователя... как я это представляю:
Класс, подключения к базе данных (синглтон), конструктор приватный, в нем собственно подключение и выбор базы... еще публичный статический метод, который проверяет создан ли объект класса, если нет, то создает объект и возвращает его, если да то возвращает существующий, пару методов с параметрами для выполнения запросов...
Класс проверки постов, в зависимости от типа данных, пришедших в глобальном массиве, производит манипуляции...
И вот как сделать дальше?! Предполагаю, написать интерфейс или абстрактный класс, от которого будут наследоваться классы для авторизации пользователя, при чем этот класс объединяет как авторизацию в админке, так и пользовательскую... различие между ними, это в способе вывода сообщения...
Тоесть, логика такая, классы вызываются в случае отсутствия сессии, если ее нет, то вызывается класс авторизации, в нем проверяются наличие данных в массиве пост, все это фильтруется и если посты не null, вызываем статичный метод подключения к базе данных, он нам возвращает объект класса, далее вызываем метод выбора из базы данных в зависимости. где параметрами будут данные из поста (пусть это будет логин), он нам вернет уже обработанный результат запроса (массив с данными), где мы сравниваем хеши паролей.. и если все нормально, то открываем сессию и присваиваем некоторое значение в сессии...
Но вот если пароли не совпадают, нам нужно вывести сообщение об этом, в админке оно будет просто выводится, распарсив HTML шаблон и заменив текст в поле <legend> филдсета самой формы авторизации... а вот как сделать на сайте... нужно чего то подменять.. как правильно????
Надеюсь понятно описал, моменты с исключениями проверками на ошибки и все такое опустил!!!
6. Edwvee - 09 Апреля, 2014 - 09:16:53 - перейти к сообщению
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- Класс, подключения к базе данных (синглтон), конструктор приватный, в нем собственно подключение и выбор базы... еще публичный статический метод, который проверяет создан ли объект класса, если нет, то создает объект и возвращает его, если да то возвращает существующий, пару методов с параметрами для выполнения запросов...
- Класс проверки постов, в зависимости от типа данных, пришедших в глобальном массиве, производит манипуляции...
Почему бы не разобрать работу хотя бы одного фреймворка в этом плане? Вполне себе пример будет.