Перейти к публикации

Ошибка с | в доп.поле изображения новости


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

После обновления. При загрузке изображения через доп.поле тип "Загружаемое изображение" в базу вместо символа | попадают |

С другими типами доп.полей проблем нет. Пробовал создать аналогичное поле, но ошибка повторяется

Пример из БД:

otpravit-v-top4|0||tip|1||thumb|2023-04/logo.webp|0|0|203x203|6.96 Kb||medium|2023-04/1681467130_logo.webp|0|0|203x203|6.96 Kb||podzag|testtesttest22||istochnik|tetet||otpr_vk|0||autor-x|Псевдоним||test-img|2023-04/1681468345_logo.webp|0|0|203x203|6.96 Kb

Баг? Или что-то в настройках следует поправить?

UPD. Решение

engine/inc/xfields.php закомментировать строку 2223

//$xfielddatavalue = str_replace( "|", "|", $xfielddatavalue );
Изменено пользователем Alexandre
Ссылка на сообщение
Поделиться на других сайтах
  • Alexandre изменил заголовок на Ошибка с | в доп.поле изображения новости
16 минут назад, Alexandre сказал:

С другими типами доп.полей проблем нет. Пробовал создать аналогичное поле, но ошибка повторяется

Пример из БД:

Так и должно быть, потому что вы не видите по своему же примеру что | это служебные теги для разделения данных и причем крайне важный и для других данных. И потом DLE обрабатывает эти данные когда обрабатывает изображения полностью корректно. Но вы используете видимо свои правки в скрипте, которые для этого не адаптированы и не умеют работать с новым форматом данных. Поэтому это у вас и вызвало проблему. Все стандартные функции работают полностью корректно при таком формате хранения.

Ваше решение и ваши правки некорректны. Делать их нельзя, иначе нарушите полностью корректную работу стандартных функций DLE. И если используете модификации в своем скрипте, то адаптировать вы должны именно свои правки. 

Ссылка на сообщение
Поделиться на других сайтах
2 минуты назад, celsoft сказал:

Так и должно быть, потому что вы не видите по своему же примеру что | это служебные теги для разделения данных и причем крайне важный и для других данных. И потом DLE обрабатывает эти данные когда обрабатывает изображения полностью корректно. Но вы используете видимо свои правки в скрипте, которые для этого не адаптированы и не умеют работать с новым форматом данных. Поэтому это у вас и вызвало проблему. Все стандартные функции работают полностью корректно при таком формате хранения.

Ваше решение и ваши правки некорректны. Делать их нельзя, иначе нарушите полностью корректную работу стандартных функций DLE. И если используете модификации в своем скрипте, то адаптировать вы должны именно свои правки. 

Погуглил. Аналогичная проблема была с доп.полямем типа список в профилях в 2018 https://dle-faq.ru/faq/common/24398-problema-s-otobrazheniem-dop-polya-tipa-spisok-v-profile-polzovatelya-kak-ispravit.html

 

Вы к сожалению не подсказали решение. Я обновился на чистую 16 версию + свои плагины. Плагины пробовал отключить и повторно загрузить изображения, проблема сохранялась.

 

Я не претендую на корректность своего решения. Но была проблема - решение я нашёл. Что нужно чтобы решить проблему правильно? Переустановить версию?

Ссылка на сообщение
Поделиться на других сайтах
29 минут назад, Alexandre сказал:

Вы к сожалению не подсказали решение. Я обновился на чистую 16 версию + свои плагины. Плагины пробовал отключить и повторно загрузить изображения, проблема сохранялась.

Какая именно проблема? Вы привели структуру как записано в БД. Но это не является проблемой, так и должно быть!!!! И оригинальный DLE с этой структурой работает корректно. | это HTML сущность символа |. Если написать в тоже описание картинки символ | то он будет визуально на сайте при показе выводиться также визуально как |

Так в чем собственно проблема то?

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

Этот символ является разделителем, поэтому то, что Вы закомментировали str_replace - может привести к фатальным проблема при выводе, записи и обновлении доп. полей в будущем.

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

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

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

Гость
Ответить в тему...

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

  Разрешено не более 75 эмодзи.

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

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

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

×
×
  • Создать...