首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Php不会通过$ _POST接收变量

Php不会通过$ _POST接收变量
EN

Stack Overflow用户
提问于 2018-06-09 06:16:46
回答 2查看 36关注 0票数 -1

Php不会通过$ _POST接收变量。我试图用ajax向php页面传递一个变量,但是php接受一个变量为NULL。告诉我,错误是什么,以及如何修复它?

jquery代码:

代码语言:javascript
复制
var imgPath;


$(".close_modal_clear_cover").on("click", function(e) {

    imgPath = $("#cover_preview").attr('src');
    $.ajax({
    url: "/management/ajax_scripts/img_delete.php",
    type: "POST",
    data: imgPath,
    async: true,
    cache: false,
    contentType: false,
    dataType: "json",
    processData: false,
    success: function (returndata) {
            console.log(imgPath); //url of image
            console.log(returndata); // NULL
        }
    });

});

img_delete.php代码:

代码语言:javascript
复制
if (isset($_POST['imgPath'])) {
$path= $_POST['imgPath'];
unlink($path);
$response = $path; 

} else {
  $response = "false";
}

echo json_encode($response);
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-06-09 18:23:22

感谢@Reflective的帮助。在研究了img_delete.php中的数据并搜索了一下之后,我找到了一个解决方案。由于某种原因,contentType被指定为false,但它是必需的'application / x-www-form-urlencoded;charset = UTF-8‘。

这是一个愚蠢的错误,但突然有人与相同的碰撞。

代码语言:javascript
复制
$(".close_modal_clear_cover").on("click", function(e) {
    // imgPath = $.session.get("imgCover");
    imgPath = JSON.stringify($("#cover_prewiew").attr('src'));
    $.ajax({
    url: "/management/ajax_scripts/img_delete.php",
    type: "POST",
    data: {imgPath: imgPath},
    async: true,
    cache: true,
    contentType: 'application/x-www-form-urlencoded; charset=UTF-8',
    dataType: "json",
    processData: true,
    success: function (returndata) {
            console.log(imgPath);
            console.log(returndata);
        }
    });

});
票数 0
EN

Stack Overflow用户

发布于 2018-06-09 06:21:56

data: imgPath应该是data: {imgPath: imgPath},并且你应该在php后端把你的$_GETs改成$_POSTs

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50769034

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档