megauser Опубликовано 22 августа, 2021 Жалоба Поделиться Опубликовано 22 августа, 2021 Есть поставщик у которого фото идут в таком формате ссылка , по идее фото открывается. Но не закачивается на сервер ко мне. со https проблему знаю и кто то из форумчан мне уже допиливал, с других сайтов отлично грузит по https Поэтому тут дело скорей всего в том что ссылка специфическая. https://cdn2.randewoo.ru/img/25796/z/1 Может кто сталкивался? Цитата Ссылка на сообщение Поделиться на другие сайты
phukortsin Опубликовано 22 августа, 2021 Жалоба Поделиться Опубликовано 22 августа, 2021 Simpla на работу с такими ссылками на изображения НЕ рассчитана. Стандартно ссылка должна иметь обычное расширение типа gif, jpeg. Чтобы такое работало, надо переделывать скрипт ресайза по-своему... Цитата Ссылка на сообщение Поделиться на другие сайты
megauser Опубликовано 22 августа, 2021 Автор Жалоба Поделиться Опубликовано 22 августа, 2021 11 часов назад, phukortsin сказал: Simpla на работу с такими ссылками на изображения НЕ рассчитана. Стандартно ссылка должна иметь обычное расширение типа gif, jpeg. Чтобы такое работало, надо переделывать скрипт ресайза по-своему... Сколько будет стоить? Цитата Ссылка на сообщение Поделиться на другие сайты
Kosjak76 Опубликовано 23 августа, 2021 Жалоба Поделиться Опубликовано 23 августа, 2021 А зачем скрипт ресайза переделывать? Проблема же не в ресайзе, а в импорте. Предлагаю при импорте копировать картинку сразу к себе на сервер и давать ей свое собственное имя. А дальше скрипт ресайза уже будет работать стандартно. Цитата Ссылка на сообщение Поделиться на другие сайты
megauser Опубликовано 23 августа, 2021 Автор Жалоба Поделиться Опубликовано 23 августа, 2021 1 час назад, Kosjak76 сказал: А зачем скрипт ресайза переделывать? Проблема же не в ресайзе, а в импорте. Предлагаю при импорте копировать картинку сразу к себе на сервер и давать ей свое собственное имя. А дальше скрипт ресайза уже будет работать стандартно. Изображения по сути и не качаются даже. Ресайз наверное тоже стандартно не будет работать, т.к. изображения идут в формате jfif Цитата Ссылка на сообщение Поделиться на другие сайты
megauser Опубликовано 23 августа, 2021 Автор Жалоба Поделиться Опубликовано 23 августа, 2021 1 час назад, Kosjak76 сказал: А зачем скрипт ресайза переделывать? Проблема же не в ресайзе, а в импорте. Предлагаю при импорте копировать картинку сразу к себе на сервер и давать ей свое собственное имя. А дальше скрипт ресайза уже будет работать стандартно. а если товаров 11 тысяч, это не положит импорт? Цитата Ссылка на сообщение Поделиться на другие сайты
alexivchenko Опубликовано 23 августа, 2021 Жалоба Поделиться Опубликовано 23 августа, 2021 2 минуты назад, megauser сказал: Изображения по сути и не качаются даже. Ресайз наверное тоже стандартно не будет работать, т.к. изображения идут в формате jfif изображения идут в формате image/jpeg и отдаются nginx-ом при импорте проверять, есть ли у изображения тип, если нет ставить стандартно jpeg Цитата Ссылка на сообщение Поделиться на другие сайты
megauser Опубликовано 23 августа, 2021 Автор Жалоба Поделиться Опубликовано 23 августа, 2021 3 минуты назад, alexivchenko сказал: изображения идут в формате image/jpeg и отдаются nginx-ом при импорте проверять, есть ли у изображения тип, если нет ставить стандартно jpeg Вы имеете ввиду при импорте прям докачивать изображения? ведь сейчас они у меня хранятся в базе в виде данных ссылок выше. Цитата Ссылка на сообщение Поделиться на другие сайты
alexivchenko Опубликовано 23 августа, 2021 Жалоба Поделиться Опубликовано 23 августа, 2021 5 минут назад, megauser сказал: Вы имеете ввиду при импорте прям докачивать изображения? ведь сейчас они у меня хранятся в базе в виде данных ссылок выше. я имею ввиду, что нужно зачистить имеющиеся записи картинок в базе после импорта, дописать в импорте проверку simpla/ajax/import.php со строки 269 PATHINFO_BASENAME на type Цитата Ссылка на сообщение Поделиться на другие сайты
megauser Опубликовано 23 августа, 2021 Автор Жалоба Поделиться Опубликовано 23 августа, 2021 9 минут назад, alexivchenko сказал: я имею ввиду, что нужно зачистить имеющиеся записи картинок в базе после импорта, дописать в импорте проверку simpla/ajax/import.php со строки 269 PATHINFO_BASENAME на type Не совсем понял, я проверяю type и дописываю ссылкам расширение? Цитата Ссылка на сообщение Поделиться на другие сайты
alexivchenko Опубликовано 23 августа, 2021 Жалоба Поделиться Опубликовано 23 августа, 2021 1 минуту назад, megauser сказал: Не совсем понял, я проверяю type и дописываю ссылкам расширение? ссылки не должны хранится в базе, а базе хранится только имя файла который лежит в папке ./files/original для этого, вам нужно переписать simpla/ajax/import.php чтобы он проверял на наличие типа фала и в случае его отсутствия подставлял Цитата Ссылка на сообщение Поделиться на другие сайты
megauser Опубликовано 23 августа, 2021 Автор Жалоба Поделиться Опубликовано 23 августа, 2021 2 минуты назад, alexivchenko сказал: ссылки не должны хранится в базе, а базе хранится только имя файла который лежит в папке ./files/original для этого, вам нужно переписать simpla/ajax/import.php чтобы он проверял на наличие типа фала и в случае его отсутствия подставлял Почему, если в файле импорта идут ссылки, то он же не сразу скачивает изображение а по мере обращения к товару. Цитата Ссылка на сообщение Поделиться на другие сайты
alexivchenko Опубликовано 23 августа, 2021 Жалоба Поделиться Опубликовано 23 августа, 2021 4 минуты назад, megauser сказал: Почему, если в файле импорта идут ссылки, то он же не сразу скачивает изображение а по мере обращения к товару. потому, что картинки https://cdn2.randewoo.ru/img/25796/z/1 отдаются с проверкой браузера и могут иметь как webp так и jpeg тип. import у simpla работает по типу взять файл, взять имя файла и все. он не проверяет, получил он изображение или нет, просто прописывает ссылку в базу, если ничего не вытянул. поэтому, импорт нужно переписывать, в частности 269 строка. на проверку типа https://www.php.net/manual/ru/function.exif-imagetype.php Цитата Ссылка на сообщение Поделиться на другие сайты
alexivchenko Опубликовано 23 августа, 2021 Жалоба Поделиться Опубликовано 23 августа, 2021 8 минут назад, megauser сказал: Почему, если в файле импорта идут ссылки, то он же не сразу скачивает изображение а по мере обращения к товару. по мере обращения ресайз нарезает из файла который находится в ./files/original и в базе прописано его имя с типом Цитата Ссылка на сообщение Поделиться на другие сайты
phukortsin Опубликовано 23 августа, 2021 Жалоба Поделиться Опубликовано 23 августа, 2021 4 часа назад, Kosjak76 сказал: А зачем скрипт ресайза переделывать? Проблема же не в ресайзе, а в импорте. Предлагаю при импорте копировать картинку сразу к себе на сервер и давать ей свое собственное имя. А дальше скрипт ресайза уже будет работать стандартно. Во-первых, у ТС явно нигде не сказано ничего про импорт. Во-вторых, ссылка на изображение со стороннего сайта может возникает как при импорте, так и при редактировании товара при использовании функционала 'загрузить из интернета'. И если использовать Ваше предложение, то переделывать надо не только импорт, но и этот функционал - уже работа удваивается. Поэтому очень сомневаюсь, что идея хорошая... Цитата Ссылка на сообщение Поделиться на другие сайты
megauser Опубликовано 25 августа, 2021 Автор Жалоба Поделиться Опубликовано 25 августа, 2021 В 23.08.2021 в 12:03, alexivchenko сказал: потому, что картинки https://cdn2.randewoo.ru/img/25796/z/1 отдаются с проверкой браузера и могут иметь как webp так и jpeg тип. import у simpla работает по типу взять файл, взять имя файла и все. он не проверяет, получил он изображение или нет, просто прописывает ссылку в базу, если ничего не вытянул. поэтому, импорт нужно переписывать, в частности 269 строка. на проверку типа https://www.php.net/manual/ru/function.exif-imagetype.php Так у меня при импорте ссылка https://cdn2.randewoo.ru/img/25796/z/1 Сама картинка там jfif формата Получается я определяю расширение и добавляю https://cdn2.randewoo.ru/img/25796/z/1.jfif Но тогда получается что изображение просто не скачается, т.к. сервер так не отдает. Получается фото все качать придется? а обычным функционалом они не будут подтягиваться постепенно? Цитата Ссылка на сообщение Поделиться на другие сайты
alexivchenko Опубликовано 25 августа, 2021 Жалоба Поделиться Опубликовано 25 августа, 2021 9 минут назад, megauser сказал: Так у меня при импорте ссылка https://cdn2.randewoo.ru/img/25796/z/1 Сама картинка там jfif формата Получается я определяю расширение и добавляю https://cdn2.randewoo.ru/img/25796/z/1.jfif Но тогда получается что изображение просто не скачается, т.к. сервер так не отдает. Получается фото все качать придется? а обычным функционалом они не будут подтягиваться постепенно? нет, после нескольких проб, решение либо качать в ручную или писать парсер с заголовками браузера который будет ожидать jpeg/jpg/webp собирать все в csv или напрямую через апи кидать. стандартный simpla resize не умеет работать с форматом таких изображений Цитата Ссылка на сообщение Поделиться на другие сайты
megauser Опубликовано 25 августа, 2021 Автор Жалоба Поделиться Опубликовано 25 августа, 2021 1 час назад, alexivchenko сказал: нет, после нескольких проб, решение либо качать в ручную или писать парсер с заголовками браузера который будет ожидать jpeg/jpg/webp собирать все в csv или напрямую через апи кидать. стандартный simpla resize не умеет работать с форматом таких изображений Мде, это печально... Цитата Ссылка на сообщение Поделиться на другие сайты
alexivchenko Опубликовано 25 августа, 2021 Жалоба Поделиться Опубликовано 25 августа, 2021 (изменено) 1 час назад, megauser сказал: Мде, это печально... ничего печального, просто нужно переписать в api/image.php функцию download_image и resize/resize.php Изменено 25 августа, 2021 пользователем alexivchenko Цитата Ссылка на сообщение Поделиться на другие сайты
Noxter Опубликовано 25 августа, 2021 Жалоба Поделиться Опубликовано 25 августа, 2021 Во базар развели! Юзай file_get_contents и file_put_contents чтобы сохранить фото на сервере. Цитата Ссылка на сообщение Поделиться на другие сайты
phukortsin Опубликовано 26 августа, 2021 Жалоба Поделиться Опубликовано 26 августа, 2021 16 часов назад, Noxter сказал: Во базар развели! Юзай file_get_contents и file_put_contents чтобы сохранить фото на сервере. Особо ничего не развели, обычные обсуждения. А вопрос не в том, чтобы "сохранить фото на сервере", а чтобы полностью правильно обрабатывать картинки с нестандартными для Simpla ссылками. И судя по тому, что в теме специалисты в основном дают общие советы, для решения надо написать код довольно большой и не совсем простой... А один спец здесь в теме сначала сказал "поэтому, импорт нужно переписывать". А чуть позже заговорил совсем иначе "нужно переписать в api/image.php функцию download_image и resize/resize.php". Думаю, если у него вдруг дойдет до дела, то быстро выяснится, что требуется еще пару функций переписать... Цитата Ссылка на сообщение Поделиться на другие сайты
Noxter Опубликовано 26 августа, 2021 Жалоба Поделиться Опубликовано 26 августа, 2021 Достаточно немного переписать функцию download_image дабы подобные картинки по ссылкам сохранить на сервере, и уже при открытии товара корректно выполнилась функция обрезки. Цитата Ссылка на сообщение Поделиться на другие сайты
alexivchenko Опубликовано 26 августа, 2021 Жалоба Поделиться Опубликовано 26 августа, 2021 3 часа назад, phukortsin сказал: Особо ничего не развели, обычные обсуждения. А вопрос не в том, чтобы "сохранить фото на сервере", а чтобы полностью правильно обрабатывать картинки с нестандартными для Simpla ссылками. И судя по тому, что в теме специалисты в основном дают общие советы, для решения надо написать код довольно большой и не совсем простой... А один спец здесь в теме сначала сказал "поэтому, импорт нужно переписывать". А чуть позже заговорил совсем иначе "нужно переписать в api/image.php функцию download_image и resize/resize.php". Думаю, если у него вдруг дойдет до дела, то быстро выяснится, что требуется еще пару функций переписать... я как раз вчера уже переписал в api/image.php функцию download_image, картинки сохраняются. правда код колхозный думаю как его лучше написать Цитата Ссылка на сообщение Поделиться на другие сайты
Noxter Опубликовано 26 августа, 2021 Жалоба Поделиться Опубликовано 26 августа, 2021 21 минуту назад, alexivchenko сказал: я как раз вчера уже переписал в api/image.php функцию download_image, картинки сохраняются. правда код колхозный думаю как его лучше написать Экстрасенсы в отпуске Цитата Ссылка на сообщение Поделиться на другие сайты
phukortsin Опубликовано 26 августа, 2021 Жалоба Поделиться Опубликовано 26 августа, 2021 55 минут назад, alexivchenko сказал: я как раз вчера уже переписал в api/image.php функцию download_image, картинки сохраняются. правда код колхозный думаю как его лучше написать Если можно, выкладывайте код. "код колхозный" - этот второстепенный недостаток можно потерпеть, если все работает верно... Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.