【问题标题】:AJAX - can't send multiple dataAJAX - 无法发送多个数据
【发布时间】:2014-07-13 13:26:05
【问题描述】:

我有以下 AJAX 脚本。

    $.ajax({
                type: 'POST',
                url: '/remove_comment.php',
                data: {id: {$commentID}, username: {$username}},
                async: false
                });

当我尝试只发送一个数据参数 (id) 时,它起作用了,但后来我添加了第二个(用户名),它就停止了工作。我确信这两个变量 ($commentID,$username) 都已设置且不为空。

remove_comment.php

<?php 
if (isset($_POST['id']) && isset($_POST['username'])) {
$id = mysqli_real_escape_string($link, $_POST['id']);
$username = mysqli_real_escape_string($link, $_POST['username']);
//do something
}
else {
echo 'Something went wrong';
}
    ?>

如何通过 AJAX 发送多个数据?当我单击按钮时,什么都没有发生,甚至没有错误消息。

【问题讨论】:

  • {$commentID} 语法错误

标签: php jquery ajax


【解决方案1】:

您用于创建要在数据中发送的对象的语法不正确。试试这个:

data: {
    id: $commentID,
    username: $username
},

【讨论】:

  • 试过了,没有。现在我检查了控制台,发现以下内容:data: { id: 2, username: Juro //my username }, 并且错误:“未捕获的 ReferenceError:未定义 Juro”
  • '{$username}' 试试这个
【解决方案2】:

我想我解决了。问题是,当服务器用我的用户名替换变量用户名时,他认为我的用户名是(javascript)变量的名称,而不是字符串。所以解决方案是将 {$username} 替换为 '{$username}'。无论如何感谢您的帮助。

【讨论】:

    猜你喜欢
    • 2022-11-27
    • 2021-12-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-20
    • 2012-03-08
    相关资源
    最近更新 更多