Сохранение образа base64 на сервер не работает в PHP - PullRequest
0 голосов
/ 19 июня 2020

Я получаю изображение base64 в формате json, как показано ниже

{
"profilepic":"iVBORw0KGgoAAAANSUhEUgAAAPAAAABGCAYAAADyxhn6AAAMYml..." 
}

У меня есть код PHP, как показано ниже, где я декодирую это изображение base64 и сохраняю его на сервере, я пытался запустить код и я не могу увидеть изображение в определенной папке.

Может ли кто-нибудь помочь мне определить проблему здесь?

<?php
header("Access-Control-Allow-Origin: *");


$str_json = file_get_contents('php://input'); //($_POST doesn't work here)
$response = json_decode($str_json, true); // decoding received JSON to array
$photo =  $response["profilepic"];

// Obtain the original content (usually binary data)
$bin = base64_decode($photo);
// Load GD resource from binary data
$im = imageCreateFromString($bin);
// Make sure that the GD library was able to load the image
// This is important, because you should not miss corrupted or unsupported images
if (!$im) {
  die('Base64 value is not a valid image');
}

// Specify the location where you want to save the image
$img_file = 'test/'.uniqid().'.jpg';

// Save the GD resource as PNG in the best possible quality (no compression)
// This will strip any metadata or invalid contents (including, the PHP backdoor)
// To block any possible exploits, consider increasing the compression level
imagejpeg($im, $img_file, 80);
$imgPath = 'http://serverip/'.$img_file;

?>

Пожалуйста, помогите мне определить проблему

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...