【问题标题】:PHP auto refresh page without losing user inputPHP自动刷新页面而不会丢失用户输入
【发布时间】:2010-06-09 01:33:33
【问题描述】:

我正在开发一个 PHP 协作软件项目。我有一个页面显示来自其他正在向数据库添加内容的用户的最新更新,但也有一个表单输入以允许用户输入文本。我目前正在使用此代码每 30 秒自动刷新一次页面:

header('Refresh: 30');

问题在于标题代码刷新了整个页面,而不仅仅是从数据库中提取的内容。是否有任何 PHP 代码可以从数据库中提取任何新数据而不刷新整个页面?

如果有人能指出我正确的方向,我将不胜感激。

【问题讨论】:

    标签: php javascript mysql polling


    【解决方案1】:

    PHP 仅在浏览器向服务器发出新请求时运行。如果您要求浏览器刷新页面,它会这样做。

    如果您想在页面加载后动态更改页面内容,则必须使用 JavaScript 和 AJAX。 jQuery 库在 Stack Overflow 上被广泛讨论并在网络上广泛使用,它使 AJAX 请求特别容易执行。安装库后,您可以编写如下内容:

    $("#element-to-refresh").load("your-page.php #element-to-refresh");
    

    这是一种粗略的方法,会生成和传输大量不必要的内容,但它确实有效。对于更优雅的方法,请考虑一个仅生成相关数据的脚本,您只能在刷新时调用这些数据。

    【讨论】:

    • 非常感谢您的帮助!
    猜你喜欢
    • 1970-01-01
    • 2011-12-29
    • 2016-03-26
    • 2014-08-16
    • 2017-03-22
    • 1970-01-01
    • 2011-04-27
    • 2012-12-26
    • 1970-01-01
    相关资源
    最近更新 更多