HTML-PHP-MySQL:在页面之间查询结果缓存

时间:2011-01-24 08:38:13

标签: php mysql html

问题是全球性的,但特别是在博客上创建leach&论坛...当我运行MySQL查询时,它会返回结果并显示它们

喜欢

title - promo text - thumnail\images

并使用它我提供了一个页面的链接,我将发送id或其他东西,它将再次查询数据库并再次获取结果,然后我将显示完整的详细信息... 是否有 ANY 的方式

查询并获取所有结果并仅显示所需的属性,当通过链接时,用户进入详细信息页面,查询结果\数据集\ PHP(Assoc \ Array)数组仅通过发送到其他页面进行传输。 。

一种可能性是通过URL \ Form发送作为参数传递 - > GET \ POST 另一个是将它存储在会话中但不会增加每个会话的大小

有没有办法......再加上请告诉我你得到了我正在做的事情

3 个答案:

答案 0 :(得分:2)

你真的不必担心这个。但是,如果查询数据库并呈现页面对您来说是性能影响(并且数据 - 大部分是静态的),那么您可以开始缓存数据或呈现的页面本身。只需查看Zend_Cache,即可轻松,经过实践检验的解决方案,可以处理这两种情况。

答案 1 :(得分:-1)

如果您使用图像,样式表等的绝对路径,它很可能会被浏览器缓存。否则,您可以使用许多可用的缓存解决方案,如memcached。您还可以使用phpThumbmod_rewrite按照here说明来缓存图片。

答案 2 :(得分:-1)

在这种情况下,我认为会议是你最好的选择:

  • 它们比数据库查询更有效率
  • 使用$ _GET数组,如果您发送的数据是保密的,则URL会出现安全问题,即使不是这样,如果他们看到他们的数据被传递给所有人,也可能会降低用户对您的信心查看。您还必须知道URL长度,因为Internet Explorer的限制为2083个字符(http://support.microsoft.com/kb/208427
  • 使用$ _POST将涉及您在用户访问的每个页面上设置(我假设)隐藏表单,并确保当用户访问链接时,表单将被提交。这似乎是一个你不应该处理的问题。
  • 您可以使用Cookie,但是您再次遇到私有数据存储在客户端的问题。此外,如果cookie很大,每次访问新页面时都需要将它们发送到Web服务器,从而增加使用的带宽量
  • 您可以使用javascript在同一页面上使用额外数据填充空div,而不是让用户完全离开页面。如果用户关闭了javascript,这将无效,因此您还需要实现其他一些方法