AJAX没有提交?

时间:2017-06-14 21:45:24

标签: php jquery ajax

我有这段代码:

var just = $("#just").val();
var id = $("#id").val();

$.ajax({
    type: "POST",
    url: "cod_ajax/just.php",
    data: "id="+id+"&just="+just,
    cache: false,
    success:function(e){
      alert("Success");
    } 
});

我在 cod_ajax / just.php

中有这个
require "../../db.php";

if (isset($_POST['id'])) {

    $update = mysqli_query($db, "UPDATE table SET just1 = '1', just2 = '".$_POST['just']."' WHERE id = '".$_POST['id']."'") or  die(mysqli_error());

    if ($update) {
        echo "Success!";
    } else {
        echo "Error :(";
    }
}

SQL代码都是根据数据库编写的,db require也没关系,但似乎没有用。我试图删除AJAX提供的其中一个数据,比如id,但它无论如何都不起作用,也不是just2。

同时检查两个变量是否为空或不存在但两者都有信息。

更多信息

我在本地服务器上运行了这个,控制台上没有错误, alert(e)给了我成功,所有Jquery都包含在页面中。

2 个答案:

答案 0 :(得分:1)

您可以先使用变量保留发布的值,然后在更新语句中使用它们,就像这样

<?php
if (isset($_POST['id']) && isset($_POST['just'])) {
    $id_val = $_POST['id'];
    $just_val = $_POST['just'];
    $update = mysqli_query($db, "UPDATE table SET just1 = '1', just2 = '$just_val' WHERE id = 'id_val'") or die(mysqli_error());
    if ($update) {
        echo "Success!";
    }
    else {
        echo "Error :(";
    }
}
?>

答案 1 :(得分:0)

尝试存储post中的第一个变量,然后在查询中使用。 所以

$id =  $_POST["id"];

其他人也一样。 此外,您可能会发现至少以url编码方式发送数据非常有用。

然后进行查询。