PHP Одноразовый запрос к базе данных при запуске приложения - PullRequest
0 голосов
/ 22 февраля 2012

У меня есть PHP-приложение на основе ajax (без каких-либо фреймворков и т. Д.).

Мне нужно извлекать некоторые записи из базы данных (html select element elements) ОДИН РАЗ и только один раз, во время запуска приложения, сохранять его в массиве PHP и иметь этот массив доступным для будущего использования, чтобы предотвратить будущие вызовы базы данных, для ВСЕМ будущим пользователям.

Я мог бы легко сделать это весной с инициализацией bean-компонентов. И этот компонент будет иметь область приложения (контекст), чтобы его можно было использовать для ВСЕХ будущих пользовательских потоков, нуждающихся в данных. Это означает, что поиск в базе данных будет один раз, только во время загрузки приложения, и тогда некоторый компонент будет постоянно хранить раскрывающиеся данные.

Я не могу понять, как копировать сценарий использования в PHP.

Сама по себе "начальная загрузка" приложения отсутствует, пока первый пользователь не сделает что-нибудь для вызова моих php-файлов.

Более того, контекст приложения отсутствует - записи, полученные для первого пользователя, не будут доступны другому пользователю.

Как мне решить эту проблему? (Примечание: я не хочу использовать какую-либо библиотеку, такую ​​как memcache или что-либо еще.)

Ответы [ 2 ]

3 голосов
/ 22 февраля 2012

Если вам действительно нужно получить данные только при первой загрузке приложения любым пользователем, вы можете написать что-то, что получит данные из вашей базы данных, а затем переписать html-страницу, в которой вы хотите получить эти значения вТаким образом, когда следующий пользователь приходит, он просматривает статическую страницу, которая была написана программой.

Я не уверен, что 1 вызов базы данных каждый раз, когда пользователь нажимает на ваше приложение, собираетсяубить тебя, хотя.Возможно, у вас есть веская причина, но избегать базы данных все, кроме 1 раза, кажется смешным ИМО.

0 голосов
/ 22 февраля 2012

Если вам нужно попасть в базу данных один раз на посетителя, вы можете использовать $ _SESSION.В начале вашего скрипта (ов) вы запускаете сеанс и проверяете, есть ли в нем значения из базы данных.Если нет, то это первый визит пользователя, и вам нужно запросить базу данных.Сохраните значения базы данных в суперглобальном $ _SESSION и продолжайте.Если данные находятся в сеансе, используйте их и не запрашивайте базу данных.

Это вас охватит?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...