【问题标题】:Codeigniter, jQuery and Ajax - Display new information when database is updatedCodeigniter、jQuery 和 Ajax - 更新数据库时显示新信息
【发布时间】:2014-12-11 20:52:54
【问题描述】:

我有一个名为 incoming_calls 的表,其中包含字段 id(自动递增字段)、phone_number(10 位电话号码)、phone_login_id(4 位登录号码)和 date_created(这是当前时间戳)。我正在使用 codeigniter 框架,我的问题是我需要使用存储在此表中的信息制作一个 javascript 弹出窗口,但我只需要在表中存在新信息时才会出现此弹出窗口。我需要它实时发生。我有使用 PHP、MySQL 和 javascript 的经验,但我不确定如何使用任何类型的框架(如 jQuery 或带有 codeigniter 的 ajax)来实现这一点,因为我没有太多使用它们。任何帮助是极大的赞赏。

【问题讨论】:

  • 这有帮助,但我不确定如何使用 codeigniter 实现类似的东西。我没有使用过的 codeigniter、jQuery 和 ajax。我知道控制器应该将信息引导到模型,模型在模型处理信息,并处理所有查询和功能,并且视图是客户端显示的内容。任何帮助是极大的赞赏。提前致谢!
  • CodeIgniter 非常灵活,并没有太大的区别。例如,在相关教程中,任何与 php 相关的内容都使其在控制器中甚至是数据库连接(这会破坏 mvc 但现在无关紧要)以及与 jquery 相关的任何内容都将其放在视图中。

标签: php jquery mysql ajax codeigniter


【解决方案1】:

您可以使用 ajax 来实现此功能。 您可以创建一个 JavaScript 函数,您可以在其中向控制器函数发出 ajax 请求,以检查数据库上的任何内容是否已更新。但是为了检查更新,您必须将最后一个主键存储在会话或键或隐藏字段中。你可以使用 JavaScript 函数作为

setTimeout(function(){
 test();// function that make ajax reqesut for checking new records.
}, 3000);

function test()
{

// your ajax code

}

想法是在 3 秒后调用这个函数,在这里你可以传递你的最后一个 id。响应后更新最后一个 id。

在控制器功能中,您可以使用 last id 来查询新记录 作为

select * from your table where id > last id

希望对你有帮助。

我通过在 codeigniter 中使用这个想法来实现我自己的消息传递系统。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-06
    • 2011-07-10
    • 2014-01-30
    • 2018-05-03
    • 1970-01-01
    • 2012-09-01
    相关资源
    最近更新 更多