Столкнулись с тем, что эмодзи приводят к тому, что клиенты не могут оформить заказ.
При оформлении заказа включено поле с комментариями.
В итоге такие заказы не могут быть записаны в базу.
Переход на поддержку эмодзи не предлагать. Он не сделан. Может мы его и сделаем, но и в стандартном режиме работы заказы же должы оформляться, не так ли?
Query Error 1366: Incorrect string value: '\xF0\x9F\x99\x8F\xF0\x9F...' for column 'comment' at row 1
Query: INSERT INTO shop_order
(`state_id`, `total`, `currency`, `rate`, `tax`, `discount`, `shipping`, `comment`, `unsettled`, `contact_id`, `create_datetime`) VALUES ('new', 1624, 'RUB', 1, 0, 0, 580, 'Анастасия, добавьте эти ленты РІ заказ 1003078 пожалуйста Рё перевыставите счёт РјРЅРµ рџ™ЏрџЉ', '0', '3604', '2019-12-05 18:01:17')
Декодер Лебедева говорит, что текст коммента был примерно такой: 'Анастасия, добавьте эти ленты в заказ 1003078 пожалуйста и перевыставите счёт мне ?���'
По мне дак это катастрофический баг для современного Интернет-магазина. Потеря лояльного клиента ведь дорого стоит.
Прошу срочно исправить!
16 комментариев
А разум что-нибудь подсказывает, кроме того что это "катастрофический баг для современного Интернет-магазина"? =)
Павел, понятно. Скажите мне пожалуйста, вот когда я вот подключился, в прошлом году, в ноябре месяце, и до 26 ноября сего года не было ни единого эмодзи, чем это было вызвано?
Я поэтому Shop-Script и выбрал, что он безукоризненно работает, без всяких эмодзи, и что же теперь, я буду страдать из-за ваших продвинутых смайликов? Что, каждый день, что, 24 часа в сутки я должен, э... подключаться вновь, что ли, к декодеру Лебедева? Что-то я не слышал такие правила, вообще, когда я оформлял документы. Такого не было!
Извините меня! Извините меня! Я когда, в ноябре прошлого года, до 26 ноября сего года, не было ни-е-ди-но-го эмодзи, ещё раз я вам говорю. Или я... Или вы не ферштейн, или вам надо по-китайски сказать как-то? Ни единого эмодзи не было!
Ответьте на мой вопрос конкретно, и я тогда успокоюсь. Не мотайте мои нервы! Ответьте на мой вопрос кон-крет-но! Понимаете русский язык? Я вас слушаю ваш ответ!
Я задавал вопрос! Перейти на совместимость с эмодзи, то что вы говорите, это сейчас не интересует, я говорю, то что до ноября прошлого года... ДА ВЫ ЗНАЕТЕ МОЙ ВОПРОС! До ноября двадцать... э... 2019 года, 26 ноября, НЕ БЫЛО НИ ЕДИНОГО ЭМОДЗИ! С чем это могло быть вызвано? Я говорю, ни единого эмодзи! А сейчас есть эмодзи!
Высшему начальству щас соедини илии... я не знаю как.... кто может быть там старше, выше вас.
Патамушта - гладиолус! (с) )))
ага именно разум и подсказывает, что не то чтобы баг, а получается, что это угроза безопасности большому кол-ву магазинов на шопскрипте. Пояснение ниже.
А вообще можете на все инпуты повесить наблюдателя и пусть вырезает из поля все эмодзи
А сейчас представьте себе рядового владельца Интернет-магазина. Который как навешивать события не знает.
Плюс при каждом обновлении это будет отваливаться.
Плюс он жил себе и не тужил. И тут бах. Узнаёт, что часть его выстраданных заказов уходило в мусор из-за бага в Шопскрипте?
Вообще магазин не должен падать из-за того, что пользователи вставляют в поля какие-либо данные. Не так ли?
Реальная уязвимость. Например вызывая такую ошибку ботом в надежде переполнить лог файл не такая уж и бредовая идея. И за 4-6 часов это можно сделать. И тогда сайт упадёт из-за того, что кончилось место на диске.
Темболее эта ошибка пишется как минимум в 2 файла вебасиста: в db.log и error.log
И объем записываемых данных можно легко увеличить, если в комменты вставить войну и мир, например. и смайлик. Тогда и не надо 4-6 часов.... Сервер упадёт горраздо быстрее...
Печальная уязвимость Вебасиста....
Как я понимаю тоже самое можно провернуть с отзывами....
И даже без смайликов... Отзывы же не режутся по длине текста.... О, раздуть базу отзывами с войной и миром и сервер встанет...
Звучит ужасно.
Про Войну и Мир перенес в отдельную ветку... Шокирующая идея. И она, не моя. Мне ее подсказал один добрый человек..
Нет, не должны, если не включена поддержка эмодзи. Чтобы оформлялись, нужно включить поддержку эмодзи. Эмодзи не обрабатываются правильно без включённой поддержки эмодзи.
Это действительно ошибка - необходимо обрабатывать входящие данные перед вставкой в базу данных
По мне дак странно... почему не вырезать эмодзи из всех полей при сохранении заказа? В этом же нет технической сложности, если это делать штатными средствами Шопскрипта.
Решается несколькими сроками кода. Почему не сделать?
На самом деле все верно и зря набросились на человека и тем более отклонили (может описано просто не техническим слогом)
А так то обработку входящих данных еще никто не отменял, ни владелец магазина ни покупатель не должен даже задумываться над такими мелочами, может он из вайбера текст скопировал со смайликами или еще откуда
Вы отлично увидели суть этого топика.
По словам наших менеджеров, у нас регулярно возникает такая же проблема. Клиенты жалуются, что заказ не сохраняется. В комментарии ставят смайлики, т.к. специфика ИМ - товары для женской ЦА.
Для этого достаточно либо включить поддержку эмодзи в приложении Настройки либо изменить поле comment в таблице заказов shop_order запросом через phpmyadmin
Но вообще в последних версиях SS вроде в случае неподдержки эмодзи просто будут вопросительные знаки стоять в комментарии и всё.
Спасибо! Попробуем.
Помогло! Исправляли пока отдельно, для поля comment таблицы shop_order.