За последние 24 часа нас посетили 37912 программистов и 1807 роботов. Сейчас ищут 874 программиста ...

Работа с mvc

Тема в разделе "PHP для новичков", создана пользователем Dron-Boy, 15 авг 2016.

  1. Dron-Boy

    Dron-Boy Старожил

    С нами с:
    20 ноя 2014
    Сообщения:
    1.041
    Симпатии:
    126
    В общем хочу понять. Работу MVC.
    В модели я так понял создается функция где идет выбора с условиями.
    В контроллере вызывается эта функция.

    А как тогда в представление все это выводить?

    Вот например нужно сделать запрос в бд где условие id передающий гетом. Как все прописать? Если можно подробнее. Код каждого файла.
     
    #1 Dron-Boy, 15 авг 2016
    Последнее редактирование модератором: 15 авг 2016
  2. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    В контроллере ты вызываешь модель если нужно, в неё ещё можно передать данные из $_POST, $_GET например, потом модель возвращает данные и ты их передаёшь в view, чтобы оно на основе этих данных нарисовала html или что-то другое.
    Всё очень удобно, потому что view может быть html, docx, pdf, png, а при этом модель и контроллер не меняются, только view.
    --- Добавлено ---
    Можно guide почитать для Yii2, думаю поймёшь http://www.yiiframework.com/doc-2.0/guide-index.html
     
  3. Dron-Boy

    Dron-Boy Старожил

    С нами с:
    20 ноя 2014
    Сообщения:
    1.041
    Симпатии:
    126
    Во вью я могу писать цикл и выводить данные из масива. Например я в моделе вывожу из бд данные например запросом
    PHP:
    1. $products_filtered = $this->db->query("SELECT * FROM `" . DB_PREFIX .  
    2.  
    3. "product` WHERE id_categoty = '$filter_id'");
    4. потом делаю массив
    5. $mas_prod_filter=mysql_fetch_array($products_filtered);
    6. и могу я сделал цикл во вью типо
    7. do
    8. {
    9. echo 'Название'.$mas_prod_filter['name'].'';
    10.  
    11.  
    12. }
    13. while($mas_prod_filter=mysql_fetch_array($products_filtered));
     
    #3 Dron-Boy, 15 авг 2016
    Последнее редактирование модератором: 15 авг 2016
  4. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    Ты - адепт Попова?
     
    miketomlin и mr.akv нравится это.
  5. Dron-Boy

    Dron-Boy Старожил

    С нами с:
    20 ноя 2014
    Сообщения:
    1.041
    Симпатии:
    126
    А он тебе не нравится?
     
  6. VLK

    VLK Старожил

    С нами с:
    15 дек 2013
    Сообщения:
    3.010
    Симпатии:
    58
  7. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    Дело не в том, мне он нравится или нет. А в том, чему он может тебя научить. Пока у тебя каша в голове. Это видно по любимой конструкции Попова и его адептов. Ты не стремишься к самообучению и пониманию того, что ты пишешь. Тебе вполне достаточно того, что твой "учитель" в тебя вложил. Я два года назад уже видел у тебя поповщину. Смотрю, ты ни на шаг не продвинулся. Впрочем, это твой выбор.
     
    mr.akv нравится это.
  8. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.904
    Симпатии:
    719
    шел 2016 год, а ученики Попова все так же легко определяются по паре строчек кода )
     
    miketomlin, mr.akv и Ganzal нравится это.
  9. Dron-Boy

    Dron-Boy Старожил

    С нами с:
    20 ноя 2014
    Сообщения:
    1.041
    Симпатии:
    126
    Ок. И что же в коде попова вам всем не нравится?
     
  10. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    miketomlin нравится это.
  11. Dron-Boy

    Dron-Boy Старожил

    С нами с:
    20 ноя 2014
    Сообщения:
    1.041
    Симпатии:
    126
    В переменную $Mas_prod_filter заносится массив данных. Потом с помощью цикоаивыволятся данные так как нужно. Через echo
     
  12. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    Замечательненько. А что будет, если запрос не вернул строк?
     
    miketomlin нравится это.
  13. Dron-Boy

    Dron-Boy Старожил

    С нами с:
    20 ноя 2014
    Сообщения:
    1.041
    Симпатии:
    126
    Ошибка. Для этого условия написать если нет строк в массиве то нечего не делать.
     
  14. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    Зачем грамоздить условия? Зачем нагружать сервер вычисления кол-ва кортежей, если тебе эти данные фактически нигде не нужны? Ты ж просто итерируешь результат, выводишь данные.
     
  15. VLK

    VLK Старожил

    С нами с:
    15 дек 2013
    Сообщения:
    3.010
    Симпатии:
    58
    попов эксперт в веб программировании.
     
  16. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    @VLK вообще в любом программировании, и в любых алгоритмах. Даже штаны расстегивает и снимает уже после того как посрал.
     
    igordata нравится это.
  17. Dron-Boy

    Dron-Boy Старожил

    С нами с:
    20 ноя 2014
    Сообщения:
    1.041
    Симпатии:
    126
    Ок. Твое предложение. Как делать?
     
  18. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    @Dron-Boy просто while. Это же очевидно. Не?
     
    miketomlin нравится это.
  19. VLK

    VLK Старожил

    С нами с:
    15 дек 2013
    Сообщения:
    3.010
    Симпатии:
    58
    предложение изучать РНР по какой то другой литературе, желательно по какой-нибудь книге.
     
  20. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    @VLK самое смешное, что в мануале всё правильно написано. Но что нам сраный мануал, когда есть Попов?
     
  21. Dron-Boy

    Dron-Boy Старожил

    С нами с:
    20 ноя 2014
    Сообщения:
    1.041
    Симпатии:
    126
    Но вайл не выводит данные из БД если там только одна запись.
     
  22. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
  23. Dron-Boy

    Dron-Boy Старожил

    С нами с:
    20 ноя 2014
    Сообщения:
    1.041
    Симпатии:
    126
    Ок. Вечером как буду дома. Скину.
     
  24. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    Ловлю на слове. Не пропадай.
     
    denis01 нравится это.
  25. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    Вот это интрига, тоже жду результатов!
     
    miketomlin нравится это.