2016-06-22 2 views
1

Попытка создания скрипта, который загружает изображение на imgur анонимно. Просто пустая страница, когда я запускаю ее. Мне нужно отправить изображение (в базовом формате 64 строки) с заголовком и описанием. Извините за мой английский и код.Загрузить изображение на imgur с php

<? 
header ("Content-type: image/png"); 
    $im = ImageCreate (200, 100);  
    $couleur_fond = ImageColorAllocate ($im, 255, 0, 0); 
    $client_id="d9514d92012b55a"; 
    $pvars = base64_encode($im); 
    $timeout = 30; 
    $curl = curl_init(); 
    curl_setopt($curl, CURLOPT_URL, 'https://api.imgur.com/3/image.json'); 
    curl_setopt($curl, CURLOPT_TIMEOUT, $timeout); 
    curl_setopt($curl, CURLOPT_HTTPHEADER, array('Authorization: Client-ID ' . $client_id . ', title: title, description: description')); 
    curl_setopt($curl, CURLOPT_POST, 1); 
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
    curl_setopt($curl, CURLOPT_POSTFIELDS, $pvars); 
    $out = curl_exec($curl); 
    curl_close ($curl); 
    $pms = json_decode($out,true); 
    $url=$pms['data']['link']; 


?> 
+0

related: http://stackoverflow.com/questions/4372710/php-curl-https – AllInOne

+0

Похоже, что ваш код получен из [этого сообщения в блоге] (http://subinsb.com/uploading-images-using- Imgur-апи-в-PHP). Кажется, что в вашем коде отсутствуют некоторые вещи, а ваш 'client_id' недействителен. Я просто установил его, используя код из этого сообщения в блоге и действительный 'client_id', и он работает нормально. – APAD1

ответ

0

Если вы пытаетесь напечатать URL в конце концов, вы должны удалить header ("Content-type: image/png");.

Объяснение: header ("Content-type: image/png"); сообщает браузеру вести себя с содержимым, как изображение в то время как это обычный текст или HTML ...


Вы также должны использовать полный PHP тег <?php вместо короткой <?

Пояснение: Некоторые серверы не интерпретируют PHP-код, начинающийся с короткого тега php, и отправляют код в браузер в виде обычного текста.

Смежные вопросы