я имел в виду принимающий смартфон лопнет. или где вы там собрались читать свои логи.
логи никогда не отправляют наружу. ну или отправляют, до первого раза.
во-первых, не во всех, а только в самых древних, ровесниках того кода, который у вас в вопросе
а во-вторых, даже если и есть вставки, то не в контроллере, а во view. в этом весь смысл. РНР просто используется в качестве шаблонизатора, при том что сменить шаблонизатор на другой, при правильном разделении M, V и C - дело одной строчки в конфиге.
Ну то есть интеллектуальный подход с разбивой на этапы и проверкой промежуточных результатов вы принципиально отказываетесь применять?
А только "поменять случайным образом код, авось заработает"?
MVC решит эту задачу. Тем способом, который я описал выше. Контроллер работает тем самым официантом, который отправляет заказ на кухню (в модель), получает ответ (либо еду, либо совет пойти в другой ресторан) и отдаёт её клиенту, в первом случае отдавая её на сервировку во view.
SPA не решит эту задачу, поскольку потребует разделения приложения на два - серверную и клиентскую часть. И хотя серверная станет немного проще, но при этом клиентская унаследует все проблемы, и их тоже придётся решать снова, но уже для толстого приложения на яваскрипте.
а никто и не говорит что это не тормозит.
вон - википедия даже аналог персистентных соединений для HTTPS приспособила, потому что SSL хендшейк у них оказался бутылочным горлышком.
Другое дело что эти "рест запросы" ведь не от браузера к серверу за тыщу километров и 100500 роутеров, а максимум - в соседнюю железяку в стойке. То есть тайминги, которые по сравнению с временем работу типичного пхп говнокода вообще не видны.
Вы кстати не ответили на вопрос, что делает ваша система, если надо отобразить список пользователей или, скажем, список заказов, сделанных одним пользователем.
У вас очень редкая каша в голове.
Моделью вы судя по всему называете то что, остальные 100% населения земного шара называют фреймворком. Который действительно используется один и тот же на разных проектах. Но при этом "универсальные функции" в нем выполняю сервисные задачи. Сама же бизнес-логика пишется заново. Ну кроме самых стандартных случаев типа авторизации или примитивных крудов.
А контроллером вы называете модель.
Судя по вашему коду и рассуждениям, у вас рецидив типичной болезни - "перебор с теорией при полном отсутствии практики".
MVC сложно понять с нуля. Пытаясь понять, что означают все его элементы чисто в теории, вы как раз и придёте к таким забавным выводам.
Надо выполнить несколько проектов, особо не заморачиваясь с теориями, получить какую-то базу, а потом уже под неё подводить теории.
У вас очень смешное представление о паттернах :)))
Судя по всему, вы представляете себе паттерн чем-то вроде жесткой структуры всего приложения, а не способом решения частной задачи или набором рекомендаций, которым он является.
Ну расскажите мне, что вам мешает использовать паттерн ActiveRecord в сочетании с фасадами своём приложении, как это делается, например, в MVC фреймворке ларавель?
И я не понимаю, что значит "используется mysqli" если я своими глазами вижу mysql. при том что даже если mysqli и используется, то в виде точно такого же дырявого говнокода.
Оптимальный вариант - PDO.
Я не говорю про того пользователя, который отображается в "myphpadmin"
Я говорю что тот пользователь, который передаётся в запрос, не существует в БД. Это логика. Простая логика. Если запрос не нашел в базе пользователя - значит там его нет.
Рекомендую всегда рассуждать логически. Это не только необходимо в программировании, но и очень помогает в обычной жизни
логи никогда не отправляют наружу. ну или отправляют, до первого раза.