Получение данных базы данных на стороне клиента
Я уверен, что об этом спрашивали миллион раз, но каков подход к этому?
Я писал код php некоторое время, и до недавнего времени я только копировал + вставлял код javascript, но теперь с помощью YUI я начал понимать javascript и хочу больше использовать его в существующем веб-приложении, которое у меня есть. Я хочу получать различные объемы данных из баз данных и т. Д. В клиентский JavaScript. У меня есть доступ к этим данным на моих страницах php при загрузке.
Как правильно получить эти данные в моем клиентском скрипте?
- Создать клиентский javascript в моих файлах шаблонов php или smarty, вставляя данные туда, где они мне нужны?
- Использовать Ajax-вызов для получения необходимой мне информации из php-файла - возвращать данные JSON?
- Сгенерировать JSON-конструкцию данных, необходимых для страницы, и либо вернуть ее через включение скрипта, либо выгрузив ее на сгенерированную страницу?
- Что-то действительно очевидное, о чем я не думал.
3 ответа
Если бы вы могли отправить данные со страницы, я бы сделал это (то есть номер один), но получение с помощью Ajax, вероятно, лучший выбор, когда страница уже загружена.
Вероятно, вы используете таблицу данных YUI. Я полагаю, если набор данных невелик и у вас он есть во время запроса страницы, вставьте его в локальную переменную JS (я предпочитаю использовать формат JSON) и оберните YAHOO.util.LocalDataSource. вокруг этого, подключите это к Таблице данных, и вы настроены.
Если вы последовательно используете хорошую структуру массива для ваших данных, то вы можете использовать как сгенерированные страницы, так и ajax - либо использовать массив для вывода html (прямо вверх php, smarty и т. Д.), А затем вы можете вернуть эти данные с помощью json_encode() для AJAX вещи. Таким образом, если у пользователя нет javascript, ваша страница все еще работает:)