在Ajax不能正常工作的情况下向数据库发送字符串


Send string to database with Ajax not working as intended

我试图发送一个简单的字符串到数据库。为了检查我是否完成了一半,我检查了$_POST是否设置了任何东西——但是它没有。

这是我在index.php上的简单表单:

<form action="" method="POST">
<input type="text" name="add_item" id="add_item">
<input type="button" value="submit" id="button">
</form>

下面是来自该表单的AJAX,其中触发了success:

var add_item;
        $('#button').click(function(e){
            e.preventDefault();
            add_item = $('#add_item').val();
            console.log(add_item);
            $.ajax({
                type: 'POST',
                url: 'sendData.php',
                data: 'send me!',
                success: function(data){
                    alert('lol');
                }
            });
        });

sendData.php,但没有在$_POST全局:

var_dump($_POST); // returns 0
if (isset($_POST['add_item'])):
    $add_item = $_POST['add_item'];
    $submit = new Connection();
    $submit->connect_db();
    $submit->add_to_DB($add_item);
endif;

正如你所看到的,我正试图将它发送到数据库;但在此之前,我试图看看$_POST全局变量中是否有任何内容——但它返回0。

有人知道为什么吗?我是新手,我找不到任何具体的教程来解释。

尝试将数据设置为"testvar=sendme"或直接使用PlainObject

PHP似乎期望$_POST的键值对工作