Загрузить на сервер изображение html2canvas - PullRequest
0 голосов
/ 04 марта 2019

enter image description here У меня есть этот js:

$.ajax({
   url: 'ajaxfile.php',
   type: 'POST',
   data: {
        image: base64URL
   },
   success: function(data){
       console.log(data);
       $.notify("info", "Upload successfully");
   },
   error: function () {
       $.notify("Error on image upload");
   }
});

Код PHP:

<?php
  $image = $_POST['image'];
  $location = "src/upload/";
  $image_parts = explode(";base64,", $image);
  $image_base64 = base64_decode($image_parts[1]);
  $filename = "screenshot_".uniqid().'.png';
  $file = $location . $filename;
  file_put_contents($file, $image_base64);
  return [
     'status' => true
  ]
?>

Вызов выполнен (я видел в консоли браузера), нона console.log я вернул код php.Вроде ничего не происходит, код php не реализован.У тебя есть идея?Спасибо заранее и извините за мой английский

Я поставил изображение с ошибкой

1 Ответ

0 голосов
/ 04 марта 2019

file_put_contents() возвращает false при ошибке, так что вы можете присвоить ее переменной и использовать ее для определения своего статуса следующим образом:

<?php
    $image = $_POST['image'];
    $location = "src/upload/";
    $image_parts = explode(";base64,", $image);
    $image_base64 = base64_decode($image_parts[1]);
    $filename = "screenshot_".uniqid().'.png';
    $file = $location . $filename;

    $imageData = file_put_contents($file, $image_base64);

    if ($imageData !== false) {
        echo "success";
    } else {
        http_response_code(500);
        die();
    }
?>
...