$media = json_decode($_POST['media']);
Как именно вы отправляете свое изображение в этот скрипт?Загрузка файлов в PHP помещается в массив $ _FILES, а не в $ _POST.Если ваш клиентский скрипт не делает что-то интересное, файл, отправленный с client-> php, никогда не будет отображаться в _POST.
imagejpeg($image, '', 90);
Эта строка будет выводить изображение в виде содержимого .jpg немедленно, без сохраненияв файл.Затем вы делаете
echo json_encode($response);
, который будет небольшим фрагментом данных JSON.Однако вы уже вывели двоичные данные изображения с помощью вызова imagejpeg()
, так что теперь вы добавляете некоторую часть мусора в файл, который вы отправляете.
Кроме того, $image
не является двоичными данными изображения.Это дескриптор системы GD, которая является ресурсом.Выполнение json_encode не даст вам json'd .jpg, это даст вам какой-то объект json'd PHP.