|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
22.03.2016, 13:24 | #1 |
Регистрация: 05.03.2016
Сообщений: 9
|
Вопрос про ООП и разделение PHP и HTML кода.
Добрый день. В программирование я новичок. Выполняю учебные проекты и по ходу их выполнения возникают вопросы. Какие-то вопросы получается решить на пару с гуглом, а какие-то нет, поэтому прошу у вас помощи.
Вопрос 1. У меня есть два класса, в которых методы очень похожи, но есть разное кол-во переменных. Сам я новичок и еще не понимаю толком принципов ООП. Нужно ли в данной ситуации применять полиморфизм или можно как-то просто создать третий класс и от него наследовать? PHP код:
PHP код:
Пишу код в Notepad++. При авторизации пользователя с помощью сессии делаю проверку на то авторизован он или нет, т.е. никакие формы HTML я не могу предоставить пользователю без проверки. И получается так, что HTML код встроен в PHP и он становится серым. Это зависит от среды в которой работаешь? Или есть определенные принципы как можно это все отделить друг от друга, чтобы дизайнер мог спокойно работать с HTML кодом? Как пример: PHP код:
Последний раз редактировалось Belzik; 22.03.2016 в 13:26. |
22.03.2016, 13:35 | #2 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Ну никто ж не заставляет РНР и HTML в один файл пихать. Например самое простое — include или require. И вместо echo можно что-то типа
Код:
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. Последний раз редактировалось Alex11223; 22.03.2016 в 13:39. |
22.03.2016, 13:46 | #3 |
Старожил
Регистрация: 31.05.2010
Сообщений: 3,301
|
Если два класса выполняют одинаковую работу, но только с разными входными данными – я бы сделал всего один класс, и через параметры конструктора регулировал бы его поведение.
Отображение информации прямо в методах класса – такого быть не должно. Для этого есть шаблоны, как уже отметили выше. Создавать новое подключение к БД в каждом методе класса – дурное дело. |
22.03.2016, 14:16 | #4 |
Регистрация: 05.03.2016
Сообщений: 9
|
Спасибо за ответы, пойду пробовать.
|
25.03.2016, 18:30 | #5 | |
Регистрация: 05.03.2016
Сообщений: 9
|
Цитата:
Но вот с классами до сих пор не выходит. В интернете как правило простые примеры по типу присвоение переменной какого-либо значения в конструкторе, поэтому не могу понять как тут его применить. Могли бы Вы, пожалуйста, показать на конкретном примере двух данных классов? И если таких классов 6 штук, то применяется конструктор? Метод show() изменить не сложно, но вот, что делать с create() я не пойму. PHP код:
PHP код:
Последний раз редактировалось Belzik; 25.03.2016 в 18:43. |
|
25.03.2016, 19:53 | #6 |
Старожил
Регистрация: 31.05.2010
Сообщений: 3,301
|
Примерно так:
PHP код:
PHP код:
|
25.03.2016, 20:29 | #7 |
Регистрация: 05.03.2016
Сообщений: 9
|
Большое спасибо. Пойду сейчас пробовать и разбираться.
|
26.03.2016, 15:33 | #8 |
Регистрация: 05.03.2016
Сообщений: 9
|
Еще раз спасибо. Разобрался что и как работает, стало понятно, что делать если разное кол-во переменных, но по факту выполнение одно и то же. Добавил еще туда 4 массива. В итоге код уменьшился раз в 5 )
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Подсветка php,css,html и.т.д кода на движке phpbb | dirtez | PHP | 5 | 07.01.2011 00:57 |
Вопрос про ООП | Unconnected | Общие вопросы Delphi | 15 | 13.02.2010 20:22 |
Ищу программу, редактор кода php, js, html, css ... | iankov | Софт | 4 | 27.11.2009 00:04 |
Вопрос про печать кода ? | juan666777 | Софт | 2 | 21.07.2009 13:27 |