【发布时间】:2014-01-24 02:37:17
【问题描述】:
我是 PHP、JavaScript、JQuery、JSON 和 AJAX 的新手。几周前我开始学习所有这些东西。
我的问题:
我正在创建一个显示来自数据库的数据的网站。在网站上应该可以搜索、排序和过滤数据。
现在我从 AJAX 请求中收到一个 JSON_encoded 数组,其中包含数据库中的所有数据。现在我问是否可以将来自 AJAX 请求的响应保存在全局变量中,例如,如果用户想要订购数据,我不需要再次从数据库中获取数据。 (通过使用类似 php 函数“multisort()”)
还是我必须发出一个新的查询/Ajax 请求来对查询 ORDER BY 中使用的数据进行排序?
我已经读过,由于 Ajax 的异步性,保存到全局变量不起作用。那么如何避免很多 Ajax 请求呢?还是很多 Ajax 请求是解决这个问题的常用方法?
希望您能理解我的问题。
如果你愿意,我可以附上我写的代码,但没有尝试解决这个问题,因为我想了解常见的解决方案是什么。
【问题讨论】:
-
全局变量只要在数据写入变量后访问数据就可以工作...
-
如果您正在谈论您希望特定用户可以使用的数据,因为她继续请求您希望将 json 数据存储在 session variables 中的页面。
-
技术上可以将数据保存到全局变量,甚至是隐藏的输入。不过我不推荐它......一旦你在浏览器上进行了刷新,你就会失去所有的工作。此外,从数据库中重试已排序的记录实际上比在浏览器上使用 javascript 进行排序要快得多。
标签: javascript php jquery ajax json