2

这就是我想使用 jquery ajax 删除记录的方式

deleteFile: function(obj) {
        $.ajax({
            type: 'delete',
            dataType: 'json',
            url: 'service/lead.php?a=deleteFile',
            data: {id: $(obj).attr('data-lf-id')}
        }).done(function(response) {
            console.log("done");
        }).fail(function(error) {

        });
    }

这可行,但我应该如何获得页面id上的值lead.php?这是我目前正在做的,但它没有捕捉到id价值。

//service/lead.php
if ($_SERVER['REQUEST_METHOD'] == "DELETE") {
    if ($_GET['a'] == 'deleteFile') {
        echo json_encode($lead->deleteLeadFile($_REQUEST['id']));
    }
}
4

2 回答 2

1
file_get_contents(“php://input”)

这总是为您提供原始请求数据 - 您必须解析它[parse_str如果您发送 urlencoded 数据,json_decode如果您发送 JSON]。

但是你应该保持它是 RESTful 而不是类似 RPC,并在/resource/:id.

于 2013-09-25T20:55:14.043 回答
1

我建议将您的 Ajax 类型更改为“POST”或“GET”。然后您可以使用适当的 $_GET 或 $_POST 变量来检索您的 id。

deleteFile: function(obj) {
        $.ajax({
            type: 'POST',
            dataType: 'json',
            url: 'service/lead.php?a=deleteFile',
            data: {id: $(obj).attr('data-lf-id')}
        }).done(function(response) {
            console.log("done");
        }).fail(function(error) {

        });
    }

//service/lead.php

if ($_GET['a'] == 'deleteFile') {
    echo json_encode($lead->deleteLeadFile($_POST['id']));
}
于 2013-09-25T20:44:08.470 回答