Перейти к содержанию
Официальный форум поддержки Simpla

Ресайз не делается. Кириллица.


Рекомендуемые сообщения

В БД файл изображения хранится в виде ссылки на изображение на сайте поставщика. 

На страницу сайта картинка пытается вывестись вот в таком виде:

http://(мой сайт)/files/products/http%253A%252F%252Fwww.(сайт поставщика).ru%252Fuserfiles%252Fshop_cat_images%252F%252089.800x800w.jpg?0f968addbee2cd6a6e9419ecf9eeedf9

 

То есть картинка не загрузилась. В папке Originals файла нет.

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

Например название было "картинка45.jpg" загружена в originals под названием "45.jpg"

 

То есть не загружаются изображения вида "картинка.jpg", видимо отбрасывается название полностью.

 

Где проблема? Хостинг? 

Или надо добавить транслит в функцию download_image?

Ссылка на сообщение
Поделиться на другие сайты

Транслитерация картинок в симпле есть api/Image.php функция correct_filename

О, спасибо!

Странно, почему она вызывается только в функции upload_image, а в download_image остается все как есть?

Как вы думаете, стоит самостоятельно туда ее добавить и при скачивании сохранять в латинице?

Ссылка на сообщение
Поделиться на другие сайты

О, спасибо!

Странно, почему она вызывается только в функции upload_image, а в download_image остается все как есть?

Как вы думаете, стоит самостоятельно туда ее добавить и при скачивании сохранять в латинице?

Вы картинки как заливаете? Путём вставки ссылки на изображение?

Если да, то функция upload_image как раз таки вызывается в simpla/ProductAdmin.php, потом происходит ресайз и если файл в БД записан как удалённый то выполняется функция download_image.

На самом деле разработчик таких костылей навешал с работой изображений что проще плюнуть и сделать заново.

Изменено пользователем Noxter
Ссылка на сообщение
Поделиться на другие сайты

Вы картинки как заливаете? Путём вставки ссылки на изображение?

Если да, то функция upload_image как раз таки вызывается в simpla/ProductAdmin.php, потом происходит ресайз и если файл в БД записан как удалённый то выполняется функция download_image.

На самом деле разработчик таких костылей навешал с работой изображений что проще плюнуть и сделать заново.

У меня все товары загружаются из CSV, соответственно в нем стоит ссылка на изображение на сервере поставщика.

То есть пока он не загрузится на сервер, в БД он хранится в виде ссылки.

А загрузиться он видимо не может из-за ошибки при попытке сохранения. Поэтому такая ерунда получается.

Изменено пользователем kossik
Ссылка на сообщение
Поделиться на другие сайты

Дополнение:

Методом тыка определил, что проблема не в кириллице, а в пробеле в имени файла у поставщика.

Мало того, что он на кириллице, так еще и с пробелами.

Например "картинка мини.jpg"

В результате после

$basename = explode('&', pathinfo($filename, PATHINFO_BASENAME));

у нас остается только " мини.jpg"

 

А вообще зачем нужна вот эта часть кода: explode('&'

В какой ситуации в filename может появиться &?

Может просто взять имя файла после последнего '/'?

Изменено пользователем kossik
Ссылка на сообщение
Поделиться на другие сайты

А вообще зачем нужна вот эта часть кода: explode('&'

В какой ситуации в filename может появиться &?

Может просто взять имя файла после последнего '/'?

Так надо.

 

http://forum.simplacms.ru/topic/12489-%D1%83%D0%B1%D1%80%D0%B0%D1%82%D1%8C-%D1%82%D0%BE%D0%BA%D0%B5%D0%BD-%D0%B8%D0%B7-url-%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9/

Ссылка на сообщение
Поделиться на другие сайты

Ну все-таки ответа нет. Методы тыка ни к чему не приводят

Может есть какое-то решение? Кто-нибудь знает что делать с файлами на кириллице и с пробелами?

Ссылка на сообщение
Поделиться на другие сайты

setlocale(LC_ALL, "ru_RU.UTF-8");

вот в чем косяк был.

на этом хостинге не настроена локаль была

написал локаль в файле класса simpla, все заработало

Изменено пользователем kossik
Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...