2015-03-07 1 views
1

Ну, я загрузил приложение в Heroku, и я обнаружил, что не могу загружать файлы на него. Затем я начал использовать Dropbox в качестве опции хранения, и я сделал несколько тестов, чтобы отправить и получить ссылку, и все было хорошо.

Теперь проблема заключается в использовании метода uploadFile() в DropboxAdapter. Он принимает ресурс в качестве файла, и я не работал хорошо. Я сделал несколько тестов, и все равно никак. Вот что я делаю, если бы кто-нибудь мог мне указать решение или направление этой проблемы, пожалуйста. :)

Вот мой фактический код для пользователя обновлений (обновите изображение пользователя и получите ссылку на файл).

 $input = $_FILES['picture']; 
     $inputName = $input['name']; 
     $image = imagecreatefromstring(file_get_contents($_FILES['picture']['tmp_name'])); 

     Storage::disk('dropbox')->putStream('/avatars/' . $inputName, $image); 

     // $data = Storage::disk('dropbox')->getLink('/avatars/' . $inputName); 


     return dd($image); 

В некоторых тестах, используя FOPEN() в файле на диске, и делать тот же самый процесс, я это заметил:

Это когда я использовал FOPEN() на файл хранится на общей папке

http://i.imgur.com/07ZiZD5.png

И это, когда я умереть (var_dump()) за $ образ, который я пытался создать. (Что это предложение из этих двух ссылок:.? PHP temporary file upload not valid Image resource, Dropbox uploading within script

http://i.imgur.com/pSv6l1k.png

Любая идея

+0

Вы попробуйте простой fopen в загруженном файле? $ image = fopen ($ _ FILES ['picture'] ['tmp_name']); – ChristianM

+0

@ChristianM Man, Если бы я мог, я бы поцеловал тебя! Оно работает. Я действительно об этом не думал. Пожалуйста, напишите вам как ответ, чтобы я мог закрыть этот вопрос. Благодаря! – pLpB

ответ

1

Попробуйте простой Еореп на загруженном файле:

$image = fopen($_FILES['picture']['tmp_name']);

Вы надеваете Нет необходимости в потоке изображения, но только в потоке, который предоставляет fopen.