Загрузка фото с другого сервера

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
Аватара пользователя
webplus
Сообщения: 336
Зарегистрирован: 2012.02.24, 22:05

Загрузка фото с другого сервера

Сообщение webplus »

Здравствуйте!
Использую расширение https://github.com/yii-dream-team/yii2-upload-behavior для загрузки фото.
Вопрос у меня в кроне должна быть загрузка фото с сайта.
Т.е. изображение находится на другом сервере, в общем через file_get_contents($urlImage) как то его нужно передать модели , чтобы поведение загрузило картинку, но как это сделать?
Сайт по работе в Украине: https://jobis.com.ua/. Сайт по поиску строителей: https://stroyzakaz.com.ua/
Создание сайтов в Киеве: https://webplus.com.ua/ по доступной цене.
Аватара пользователя
webplus
Сообщения: 336
Зарегистрирован: 2012.02.24, 22:05

Re: Загрузка фото с другого сервера

Сообщение webplus »

Можно ли чтобы изображения с другого сервера загружалось в UploadedFile::getInstance($model, 'imageFile');
т.е. наверно надо создать самому $_FILES['imageFile'] из урла к файлу на другом сервере.
Сайт по работе в Украине: https://jobis.com.ua/. Сайт по поиску строителей: https://stroyzakaz.com.ua/
Создание сайтов в Киеве: https://webplus.com.ua/ по доступной цене.
Аватара пользователя
webplus
Сообщения: 336
Зарегистрирован: 2012.02.24, 22:05

Re: Загрузка фото с другого сервера

Сообщение webplus »

пробую вот так

Код: Выделить всё

        $c = file_get_contents('http://totobi.com.ua/images/detailed/3/cce671c9-c783-11e6-80c2-000c295c9c78_411f8940-477d-11e7-80c8-000c295c9c78..jpg');
        $temp = tmpfile();
        fwrite($temp, $c);
        $metadata = stream_get_meta_data($temp);
        $_FILES['Product']['tmp_name']['image'] =$metadata['uri'];
        $_FILES['Product']['name']['image'] ='cce671c9-c783-11e6-80c2-000c295c9c78_411f8940-477d-11e7-80c8-000c295c9c78..jpg';
        $_FILES['Product']['size']['image'] = filesize($metadata['uri']);
        $_FILES['Product']['type']['image'] = mime_content_type($metadata['uri']);
        $_FILES['Product']['error']['image'] = 0;
но выдает ошибку: There is no error, the file uploaded with success. Error code is 0
Я хотел сделать чтобы этот файл подхватился поведением, которое делает сохранение и ресайз изображения.
можно было бы просто сделать copy($url, $save_path); но тогда он не обработается поведением.
Сайт по работе в Украине: https://jobis.com.ua/. Сайт по поиску строителей: https://stroyzakaz.com.ua/
Создание сайтов в Киеве: https://webplus.com.ua/ по доступной цене.
Ответить