php - 使用 jQuery 自动 PHP 通知

标签 php javascript jquery ajax

我为我的网站购买了一个通知主题,我正在尝试从网站获取一些数据来通知登录的人。

AJAX/jQuery/Javascript:

<script type="text/javascript">
var refreshId = setInterval(function(){
    $.ajax({
        type: "POST",
        url: "cron/notify.php",
        cache: false,
        success: function(data){
            $.smallBox( 
        {
            var id = data[5],
            title: "New Ticket",
            content: "A new ticket has been created. Ticket ID: <strong>" +id+"</strong><p><h6>This will close in 4 Seconds.</h6>",
            color: "#000",
            timeout: 4000
        });
    }
    setInterval(get_new, 1000);
</script>

PHP

<?php
    mysql_connect(REDACTED FOR SECURITY) or die(mysql_error());
    mysql_select_db(REDACTED FOR SECURITY) or die(mysql_error());
    $query = mysql_query("SELECT * FROM tickets WHERE DATE_ADD(submitDate, INTERVAL 1 MINUTE) < CURTIME()  AND currentStatus='Open'");
    $array = mysql_fetch_row($result);

    echo json_encode($array);
    ?>

我没有遇到任何问题或错误。

更新:

<script type="text/javascript">
var refreshId = setInterval(function() {
    $.ajax({
        type: "POST",
        url: "cron/notify.php",
        cache: false,
        success: function(data){
            $("#botSimple1").click(function(){
            $.smallBox( 
        {
            title: "New Ticket",
            content: "A new ticket has been created. Ticket ID: <strong>" +data[5]+"</strong><p><h6>This will close in 4 Seconds.</h6>",
            color: "#000",
            timeout: 4000
        });
            });
        }
    });
});

</script>

这是新脚本,JavaScript 没有错误,但通知框实际上是按钮框。可以修改吗?

最佳答案

调试 AJAX 可能很痛苦。你必须有一个清晰的认识 各个部分如何组合在一起:

  1. 使用 $.ajax 将 ajax 请求发送到服务器
  2. 服务器上的 cron/notify.php 生成一些数据并将其发送回来
  3. 使用数据调用您为“成功”定义的函数
  4. 它调用smallBox来显示数据-

所以有几个地方可能会出问题

  • 在浏览器的开发者工具/firebug 中:检查“网络”选项卡是否确实发送了请求
  • 在浏览器中:尝试直接打开后端的 URL - 在本例中为“cron/notify.php” - 它会显示您期望的数据吗?
  • 在您的 JavaScript 代码中:您仅在 JavaScript 中处理“成功”,请尝试添加错误函数
  • 在浏览器控制台中:尝试启动 $.smallBox( ) - 它实际上会显示任何内容
  • 在您的 javascript 代码中:在将数据发送到 SmallBox 之前:使用 console.log(data) 将其转储到控制台以检查它是否具有预期值

参见http://www.drdobbs.com/article/print?articleId=196802787&siteSectionName=tools有关如何使用 firebug 调试 AJAX 的教程

关于php - 使用 jQuery 自动 PHP 通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16249551/

相关文章:

javascript - 如何从控制台生成 2d Canvas 到 div

php - Opencart:自动更新货币流程如何运作

php - 使用 DomPDF/PHP 使用 Acrobat Jascript 生成 PDF

javascript - 将代码应用于动态加载的图像

php - jquery 响应正确但拾取错误

javascript - Jquery 来检查复选框仅在您第一次单击它时起作用

PHP 检查 DateTime 实例?

php - MYSQL 使用下拉列表和 session 变量插入

javascript - 我如何使用 javascript 变量在网站中输入文本?

javascript - 如何在没有 JSON 对象的情况下发布裸参数