将新行添加到数据库时的 Javascript 警报

Posted

技术标签:

【中文标题】将新行添加到数据库时的 Javascript 警报【英文标题】:Javascript alert when new row is added to database 【发布时间】:2013-11-17 16:44:03 【问题描述】:

当新记录添加到数据库时,我需要向用户浏览器发出 javascript 警报。到目前为止,我已经这样做了:

PHP chatalert.php

require("../system/config.php");
$result = mysql_query("SELECT * FROM chat");
$rows = mysql_num_rows($result);
echo $rows;

Javascript:test.php

<?php 
define('BASEPATH', true);
require("../system/config.php");
?>
<script>

var old_count = 0;

setInterval(function()    
    $.ajax(
        type : "POST",
        url : "chatalert.php",
        success : function(data)
            if (data > old_count) 
                alert('new record on i_case');
                old_count = data;
            
        
    );
,1000);

</script>

但我总是收到一个错误:“未捕获的 ReferenceError:$ 未定义”。所以我需要一些建议。

马罗

【问题讨论】:

你试过jQuery然后$? 我通过使用两步方法解决了这个问题:1) 将数据输入数据库 2) 使用 socket.io (websockets) 发送聊天消息,在客户端浏览器上触发 javascript。跨度> 你没有包括 jQuery,但即便如此:你不需要 JS 来完成这么简单的任务 【参考方案1】:

你是否包含了 jquery?如果不尝试在你的头部标签中添加这个

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

【讨论】:

【参考方案2】:

还要确保将字符串解析为整数/浮点数以获得准确的结果。 php返回的数据也可以是字符串格式:

var old_count = 0;
setInterval(function()    
    $.ajax(
        type : "POST",
        url : "chatalert.php",
        success : function(data)
            if (parseFloat(data) > old_count) 
                alert('new record on i_case');
                old_count = data;
            
        
    );
,1000);

【讨论】:

以上是关于将新行添加到数据库时的 Javascript 警报的主要内容,如果未能解决你的问题,请参考以下文章

如何将事件跟踪添加到 Javascript 警报

Javascript警报进入离子登录页面

iOS:UIAlertController 上的 textField 成为当前警报时的第一响应者

使用 Javascript/JQuery/Rails 3 动态添加新行

iPhone静音时的UILocalNotification警报

尝试将 url 重定向到在 localhost 上运行的 iTunes 时的 Safari 警报