【问题标题】:How can I keep a set of data during several calls to the server in PHP?如何在 PHP 中多次调用服务器期间保留一组数据?
【发布时间】:2011-04-20 08:38:48
【问题描述】:

我正在开发一个非常简单的 PHP 应用程序来在网络上显示图片。 我的应用程序由一个数据库组成,其中包含两个表 ImageCategories、一些简单的业务逻辑和 UI。

在用户界面中,当用户第一次加载页面时,有一张图片(随机拍摄)可以使用左/右箭头浏览图像以及选择特定类别的可能性(一张图片属于最多对一个类别)。

我的问题在于浏览机制。如果我在不选择类别的情况下浏览图像,一切都很好。如果我选择一个类别,网站会正确显示属于该类别的所有图像的缩略图(轻松查询)。

但是,如果我单击一张图片(它加载到另一个页面中),然后使用箭头导航,网站会浏览所有图片,而不是属于所选类别的图片。我想只浏览所选类别中的图片。

如何实现这个机制?我总是将 Category_IdImage_Id (所有图片为空)传递给服务器函数,但我总是在包含查询元素的变量中丢失迭代器的状态。我该如何解决这个问题?

欢迎提供带有代码示例的解决方案,但是提出实现逻辑就足够了。

谢谢

弗朗西斯科

【问题讨论】:

    标签: php database session-state


    【解决方案1】:

    不久前我做过类似的事情。

    假设您希望图像以 image_id 顺序显示,您可以执行以下操作。

    在“下一个”链接上,您使用参数调用您的 PHP 脚本,这些参数标识类别和 id 以及您想要移动的方向。例如

    myserver.com/myapp/images.php?action=next&cat=holidaypics&image_id=111

    然后,您可以通过执行类似“select min(image_id) from images where category_id="holidaypics" and image_id > 111”之类的操作来执行查询以查找具有相同类别的下一个最高 image_id

    如果您要反向进行,则将操作更改为“prev”并执行这样的查询...

    "select max(image_id) from images where category_id="holidaypics" and image_id

    这有帮助吗?

    【讨论】:

    • 是的,它是完美的。显然需要在 last_image 和 first_image 上添加控件。非常感谢!
    【解决方案2】:

    使用会话http://ru2.php.net/manual/en/book.session.php

    或在每次询问服务器时传递您需要的所有变量。

    【讨论】:

      【解决方案3】:

      考虑使用 Ajax 加载您的容器,其中包含特定类别的图像。

      就像打招呼一样简单

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-01-07
        • 2011-10-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多