Задать вопрос
@MMMYIWW

Почему пустой photos_list[] в VK API?

Здравствуйте! Не могу понять, почему ВК не загружает изображение на сервер. На тостере нашел точно такую же проблему и там она решилась, переписал к себе - не вышло, photos_list пустой:
$file_path = '/var/www/data/commons/img/name.jpg';
	$ch = curl_init($upload_url);
	curl_setopt($ch, CURLOPT_POST, true);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
	curl_setopt($ch, CURLOPT_POSTFIELDS, ['file1' => new CurlFile($file_path)]);
	curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: multipart/form-data; charset=UTF-8'));
	$json = json_decode(curl_exec($ch));
	curl_close($ch);
    var_dump($json);

В ответ получаю:
{"server":834228,"photos_list":"[]","aid":239214627,"hash":"fg95d62a0414365a0c2ae4a744e1d4c7","gid":135560236}

UPD: итак, у меня получилось загрузить изображение. Однако, вылезла другая проблема - некоторые изображения, он не хочет принимать(большинство, даже) - просто возвращает пустой photos_list. У картинок размер небольшой, одни заливаются в ВК, а другие - нет. В чем может быть проблема - не представляю.
  • Вопрос задан
  • 1366 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
@MMMYIWW Автор вопроса
Проблему решил. Оказалось, что картинки криво записывались.
Для тех, кто столкнется с такой проблемой - код на верху рабочий. Для того, чтобы записать картинку(base64) на свой сервер, необходимо сделать так:
file_put_contents($file_path, file_get_contents($_POST['img1']));
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы