Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Помогите пожалуйста по грамотности программирования

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Как грамотно ловить переменные, вставлять цикл
andreyelectro
Отправлено: 25 Марта, 2012 - 19:29:41
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Март 2012  


Помог: 0 раз(а)




Приветствую всех!
Чем больше учусь - тем больше понимаю что мало знаю...)
Подскажите пожалуйста как грамотно делать.
Структура сайта MVC.
Где лучше ловить переменные типа:
в контроллере и потом в нём переменные вставлять в функции из модели? Например:
PHP:
скопировать код в буфер обмена
  1. $object->name_function($var, $var2...);

Или в контроллере лучше просто вызывать функцию: $object->name_function() а уже в ней внутри в ней предусмотреть: и т.д.
Как быть с ситуацией, когда выполняется функция удаления например множества сообщений из базы данных...Т.е. лучше в контроллере сделать цикл, который на каждом своём "обороте" будет принимать какой-то ID и его вставлять в фукцию удаления? Например: Или этот цикл поместить в саму функцию модели, а в контроллере ловить только массив? Например:
PHP:
скопировать код в буфер обмена
  1. $object->delete_message($_POST['checkdel'])


Как в общем делать такие вещи из перечисленного грамотно чтобы выглядело профессионально?

(Отредактировано автором: 25 Марта, 2012 - 19:32:11)

 
 Top
Мелкий Супермодератор
Отправлено: 25 Марта, 2012 - 20:03:02
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




andreyelectro пишет:
Где лучше ловить переменные типа:

Именно этот вопрос, чем должен в обработке данных заниматься контроллер, а чем - модель - есть холивар Закатив глазки
Распространены оба варианта, делайте так, как считаете лично вы более правильным.

andreyelectro пишет:
Т.е. лучше в контроллере сделать цикл, который на каждом своём "обороте" будет принимать какой-то ID и его вставлять в фукцию удаления?

Но лучше не мучить базу и сделать отдельный метод "удалить указанные id", который одним запросом порежет ненужные данные. Где валидировать список id - см. выше Подмигивание


-----
PostgreSQL DBA
 
 Top
DelphinPRO
Отправлено: 25 Марта, 2012 - 20:17:32
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




на мой взгляд, модель не должна заботиться откуда поступают данные. сегодня из ПОСТ, завтра из GET, послезавтра еще откуда-то. контроллер вызывает метод модели с заданными параметрами. я так считаю. По поводу удаления согласен с мелким - лучше одним запросом, хотя, если удаление производится только в админке (т.е. ограниченным кругом лиц и нечасто), то можно и вывод метода зациклить. Опять же - в зависимости от ситуации.


-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Объектно-ориентированное программирование »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB