Ajax 不会将数据传递给 php 文件

我正在尝试使用 Ajax(无 jQuery)和 POST 将画布数据传递到 .php 文件。


不幸的是,$_POST 在我的 .php 文件中为 NULL。


JS


function takepicture()

{

  //...

  var canvasData = canvas.toDataURL("image/png");


  const req = new XMLHttpRequest();

  req.open('POST', '../controller/pictureController.php', true);


  req.onreadystatechange = function() {

      // XMLHttpRequest.DONE === 4

      if (this.readyState === XMLHttpRequest.DONE) {

          if (this.status === 200) {

              console.log("Response: %s", this.responseText);

          } else {

              console.log("Response status : %d (%s)", this.status, this.statusText);

          }

      }

  };


  req.send(canvasData);

}

PHP


saveData($_POST['canvasData']);


function saveData($data)

{

    $input = $data;

    //...

    file_put_contents($output, file_get_contents($input));

}

回应是:file_get_contents(): Filename cannot be empty这是正常var_dump(canvasData)的NULL。


当我canvasData从 JS 部分获得console.log 时,图像字符串存在,所以我猜有些东西通过了send(canvasData)对吗?


如何获取我的 php 文件中的数据?



慕勒3428872
浏览 102回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript