监听mySQL数据库中的更改(使用PHP)


Listening for changes in a mySQL database (with PHP)

假设我有一个系统,其中操作员打开一个槽(在mySQL数据库中创建一个新行),然后一个QR码出现在屏幕上。用户用iPhone扫描它,然后按"批准",这将新行中的一列更改为true

我怎么能使它,所以当它改变为true,一个消息将弹出在操作员屏幕上?

我想到了两种可能的方法:

  1. 行中的变化可以触发将消息推送到操作员机器的操作。
  2. 如果操作员可以进入一个页面,这将只加载时行= true,但我不知道如何做到这一点。

如果你知道如何做我上面列出的一些东西,或者有不同的想法,请分享,这将是非常感谢的:D

我将使用AJAX调用。制作一个php页面,检查数据库并返回一个非常简单的是/否响应,可以被javascript读取。然后,使用ajax每隔一段时间(比如每5秒)查询一次,直到页面返回yes。之后,您可以轻松地提醒用户(javascript alert()函数可以工作,或者您可能想要编写一些更花哨的代码)。

简单解决方案:只需在数据库boolHasBeenShowed中创建一个标志。当有人按"批准"时,你将boolHasBeenShowed设置为true。

当操作员打开admin页面时,检查数据库中WHERE boolHasBeenShowed = TRUE的所有记录。一旦他们被展示出来,UPDATEboolHasBeenShowed = false。这样,您将只看到新批准的记录。