无法将jQuery发布到php上 - php

我目前在在PHP页面上的MySQLi SELECT的jQuery上发布变量时遇到一些麻烦。

jQuery代码:

$("#carta1").click(function()
{
    cartaId = document.getElementById("carta1").value;
    console.log(cartaId);

    ajaxGetResults = $.ajax({
        context: this,
        type: "POST",
        url: "darResposta.php",
        data: {'cartaId' : cartaId},
        cache: false,
        dataType: "json"
    })
    .done(function(data){
        $('#3').html(data);
        console.log("Avançou para a terceira parte");
        $("#2").hide();
        $("#3").show();
    })
    .fail(function(){
        console.log('Erro ao buscar dados');
        $("#2").hide();
        $("#3").show();
        $('#3').html("Deu erro");
    });
});

PHP代码:

if(!$conn)
{
    echo "Falhou a ligação à base de dados";
}
else
{
    if(isset($_POST['cartaId']))
    {
        $cartaId = $_POST['cartaId'];
        $res = mysqli_query($conn,"
            SELECT cartaNome, cartaDescricao
            FROM tarot_cartas
            WHERE cartaId = ".$cartaId
        );
        $data = array();
        while($row = mysqli_fetch_assoc($res))
        {
            $data=$row;
        }
        echo json_encode($data);
    }
}

尝试了几种方法来解决此问题,例如将$ cartaId放在带有直接$ _POST的if语句之外,但没有任何反应。

如果您能对这个问题有所了解,将不胜感激。

感谢您抽出宝贵的时间阅读并提出解决方案。

php参考方案

使用以下代码

  data: { 'cartaId' : cartaId },

代替

   data: {"data":JSON.stringify({'cartaId' : JSON.stringify(this)})},

php:是否有充分的理由引用所有数组键/索引? - php

我正在遍历别人的代码,他们总是避免转义其数组键。例如:$ row_rsCatalogsItems [名称]代替$ row_rsCatalogsItems ['名称']因此,我不断地对自己接触的所有事物进行微小的更改,以应对这些惰性。但是现在我想知道这样做是否有很多好处。我得到它会在默认为字符串之前检查常量(我在处理常量时会讨厌php中的行为,因为即使未定义,…

在单次点击甚至点击链接时创建不同的功能 - php

我有3个链接,它们是学生的名字。第一次单击链接或奇数时间时,会出现另一个div,其中包含该学生的详细信息。在第二次或偶数时间单击同一链接时,我需要隐藏学生div。使用jquery的data()事件对我来说效果很好。我的要求是,如果我单击第一个学生链接,则会显示第一个学生的详细信息。如果单击第二个学生链接,则会显示第二个学生的详细信息。如果再次单击第一个链接,…

验证php中的javascript对象 - php

在我的用户界面中,用户可以构建一些javascript对象,例如:var box = { "width": "100px", "height": "200px", "click": function () { alert("You clicked t…

尝试使用AJAX上载文件时,FormData对象始终为空 - php

当尝试使用AJAX上传图像而不直接提交表单并将FormData对象发送到服务器时,它将返回空的$_FILES数组。但是,如果我使用<input type="submit">标记提交表单,则$_FILES数组不会为空,并且会接收数据。的HTML<form action="core/update.php"…

PHP标头功能不起作用 - php

我曾经使用此功能从一个PHP页面重定向到另一个:header( 'Location: student.php?cnp='.$_REQUEST['name']) ; 在我的本地主机中,它确实可以工作,但是如果在Internet中对其进行测试,则不会重定向。我也尝试给出完整的路径(如http://.../student.p…