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_strurlencoded データを送信するjson_decode場合、JSON を送信する場合] を解析する必要があります。

ただし、RPC のようなものではなく RESTful のままにし、delete over を発行する必要があり/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 に答える