Делаю личный кабинет, который параллельно является и админкой. Авторизация работает на сессиях.
Собственно концепт следующий, самый стандартный:
Есть меню слева, справа в окне выводятся данные, формы и тд в зависимости от выбранного пункта меню.
Как реализовать вывод данных, например если я кликнул по пункту "настройки"?
Был вариант - сделать отдельные php файлы и подключать их ajax-ом в блок справа, но почему-то такой вариант меня отталкивает. Может все в один файл личного кабинета настрочить?
Вы сначала разберитесь с концепцией, можно сделать как угодно, хоть одним файлом хоть несколькими, дело в том как это будет работать и как это удобно лично вам и пользователям которые будут это использовать. Посмотрите также как устроенно в других CMS.
Настрочить все в один файл - это спагетти код, как бы сказать точнее: когда программисту с опытом дают поддерживать такой код, то он сразу задумывается о смене места работы или начинает думать о том, почему еще не ввели обязательную уголовную ответственность за такой код.
У вас наверняка будет в одном файле смешаны HTML, PHP, Javascript и распутывать такой код будет очень тяжело, а ведь сущности разные.. А они должны быть в отдельных файлах.
Вы не единственный кто из новичков задумывается о таком, ведь это - один из самых распространенных анти-паттернов проектирования. Часто начинающие программисты в погоне за быстрой разработкой не задумываются о структурировании и проектировании своего кода и архитектуры, выучив лишь основные уроки, где для упрощения понимания часто все пишут в один файл (где это возможно).
С таким кодом, код вашего проекта будет сильно связан, он будет жесткий и неизменяемый, ведь чтобы внести изменения в такой божественный файл придется просто все переписать, потому что держать такие объемы кода в голове для его полноценного понимания просто невозможно, чего уж говорить про тестирование...
То, о чем я написал выше - это называется анти-паттерны проектирования или программирования. Использование подобных решений заставит вас тратить существенные силы при внесении изменений.
Всегда знайте, что идеального решения не существует при выборе стека. На вашем месте я бы личный кабинет сделал следующим образом:
Для разработки Backend используйте ООП, PHP фреймворк (Symfony, Lavarel, Phalcon и т.д) и архитектурный паттерн MVC. Backend - это будет API (программное решение работающее с ресурсами и возвращающее ответы клиентам)
На Javascript c использованием Vue.js/Angular/React/т.д реализуйте frontend и работайте с API на основе Ajax.
API реализуйте по архитектурному стилю REST с ответами в виде JSON.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Доброго времени сутокСуть такова: нужно добавить новую запись в json файл
Есть таблица MySQL(users), там данные - id, name, pointsМне нужно получить 3 строчки: 1 человек, который по баллам больше, я и 1 человек, который по баллам...