Yii2如何访问使用AJAX发送的POST数据

时间:2016-01-01 14:46:38

标签: php jquery ajax yii2

我想在我的控制器函数中创建一个等于POST值的变量,但是我不确定如何访问POST值。

答案很棒,但任何调试技巧都会很棒。

我尝试过$ _POST ['save_id']以及$ _POST [0] ['save_id']

$('#save-file').click(function() {

    var fileid = $(this).data('fileid');

    $.ajax({
            type: "POST",
            url: "/files/save",
            data: { 'save_id' : fileid },
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (data) {
               //do something
                console.log(fileid);
               alert("working");
            },
            error: function (errormessage) {

                //do something else
                alert("not working");

            }
        });

});

1 个答案:

答案 0 :(得分:0)

如果代码在PHP文件中,则为您的url建议您使用正确的路径,例如:

   url: <?=Url::to(['/files/save']) ?>,

(添加use use yii\helpers\Url;的补充)

如果没有php正确引用绝对路径

中的FilesController中的

public function actionSave()
{
    if (Yii::$app->request->isAjax) {
        $data = Yii::$app->request->post();
        //data: { 'save_id' : fileid },
        $mySaveId =  $data['save_id']
        // your logic;
        ......
    }
}