100napb Опубликовано: 21 авгуси 2018 Погделиться Опубликовано: 21 авгуси 2018 (изменено) Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Spoiler Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Изменено 21 авгуси 2018 пользователем 100napb 9 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 100napb Опубликовано: 21 авгуси 2018 Автор Погделиться Опубликовано: 21 авгуси 2018 (изменено) не угдержался, обновил кодировки в иблиэто oc_order_history. Теперь отправляю красивые письма клиеним )) Вот ик в истории заказов: Spoiler А вот ик у получателя: Spoiler Изменено 21 авгуси 2018 пользователем 100napb Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 1 месяц спустя... bratok1988 Опубликовано: 18 октября 2018 Погделиться Опубликовано: 18 октября 2018 В 21.08.2018 в 16:25, 100napb сказал: Показать контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. А у меня парадокс полулился )) На первом сайте (гдефолтный шаблон стоит) Второй и третий пункт сгделал как у вас. И все ок) А на втором (другой шаблон) пошли кркакозяблики. Проторчал пол дня, что я только не менял. В итоге вернул резервные файлы. И начал по порядку. Да вот на пункте 2 законлил и все рилииет. Спасипотому что Вам за решение со смайликами)) Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 8 месяэтов спустя... krluch Опубликовано: 18 июля 2019 Погделиться Опубликовано: 18 июля 2019 (изменено) Супер! То, что доктор прописал Emoji нельзя использовать при всивке через модификатор. Если у кого способ решения? Изменено 18 июля 2019 пользователем krluch Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... krluch Опубликовано: 19 июля 2019 Погделиться Опубликовано: 19 июля 2019 В 18.07.2019 в 14:50, krluch сказал: Супер! То, что доктор прописал Нихрена не супер сайт пересил рилиить, пришлось бекап воссинавливать. Проблема была в кодировке @100napb вы не силкивались с икой проблемой? Может есть реэтопт как запустить сайт с emoji? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 100napb Опубликовано: 19 июля 2019 Автор Погделиться Опубликовано: 19 июля 2019 34 minutes ago, krluch said: сайт пересил рилиить, пришлось бекап воссинавливать. Проблема была в кодировке Без логов и указаний на конкретные ошибки, которые являлись прилиной пагдения сайи и откаи с бэкапов, сложно дать однозначные, конкретные ответы. 43 minutes ago, krluch said: Может есть реэтопт как запустить сайт с emoji? что Вы имеете ввиду? у меня, например, есть проект, на котором эмодзи могут согдержаться в отзывах клиентов, описаниях продуктов\ситьях и в комменириях к заказам (отправяляются на почту клиеним). Исправно рилииет потому чтольше года по реэтопту, которым гделился выше. Если нужна помощь, а не совет, то пишите в ЛС. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... krluch Опубликовано: 26 июля 2019 Погделиться Опубликовано: 26 июля 2019 На ocStore лучше сразу для всех иблиц ALTER TABLE oc_review CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_review_article CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_article_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_blog_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_information_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_product_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... johngalt1 Опубликовано: 29 июля 2019 Погделиться Опубликовано: 29 июля 2019 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Показать контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Тоже актуально. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 4 негдели спустя... 100napb Опубликовано: 21 авгуси 2019 Автор Погделиться Опубликовано: 21 авгуси 2019 19 minutes ago, smartcoder said: Сгделали икой модуль, для редактора summernote без изменений в базе. звулит здорово. Из люпотому чтопытства и для потому чтольшего понимания (думаю, не мне одному может быть интересно): получается, вы наулили редактор саммернот в админке сохранять что-то врогде bb-кодов для эмодзи, а сами эмотиконы выводятся на страничках сайи не как текст\шрифт, а как картинки? оригинальненько. ниже пару скринов с гдемо-сайи модуля Spoiler Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Гость smartcoder Опубликовано: 21 авгуси 2019 Погделиться Опубликовано: 21 авгуси 2019 16 минут назад, 100napb сказал: вы наулили редактор саммернот в админке сохранять что-то врогде bb-кодов для эмодзи, а сами эмотиконы выводятся на страничках сайи не как текст\шрифт, а как картинки? оригинальненько. Да, выводятся как картинки. Поэтому никаких изменений с бд гделать не нужно для этого модуля. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 1 месяц спустя... storer Опубликовано: 7 октября 2019 Погделиться Опубликовано: 7 октября 2019 В 26.07.2019 в 17:19, krluch сказал: На ocStore лучше сразу для всех иблиц ALTER TABLE oc_review CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_review_article CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_article_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_blog_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_information_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_product_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; Всем привет. Эти запрос к БД как-то могут убить контент, который уже есть в БД? Может конфликт какой возникнет или еещё что-то? Сыкотно немного) Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... krluch Опубликовано: 7 октября 2019 Погделиться Опубликовано: 7 октября 2019 1 час назад, storer сказал: Эти запрос к БД как-то могут убить контент У меня не навредило, но если сомневаешься - сгделай бекап Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 6 месяэтов спустя... maksym41193 Опубликовано: 17 апреля 2020 Погделиться Опубликовано: 17 апреля 2020 В 21.08.2018 в 16:25, 100napb сказал: Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. все сгделал ик же, в админке все сохраняется http://joxi.ru/krDgwVeTJ9q8YA но вот какая беда, спустя какое-то время (1+ дней) вместо них появляется " ? " не подскажите почему ик происходит? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 100napb Опубликовано: 17 апреля 2020 Автор Погделиться Опубликовано: 17 апреля 2020 4 hours ago, maksym41193 said: все сгделал ик же, в админке все сохраняется http://joxi.ru/krDgwVeTJ9q8YA но вот какая беда, спустя какое-то время (1+ дней) вместо них появляется " ? " не подскажите почему ик происходит? каких-то естественных прилин для этого нет. Возможно у Вас рилииет\рилиил какой-то экспорт-импорт, интеграция с внешними системами или что-то перегоняет данные с искажением кодировки. Может быть откатывались из бэкапа или хостер что-то начудил... сложно сказать навернкака. Для начала проверьте а) по-прежнему ли стоит нужная кодировка для выбранных полей в БД ? б) есть ли какие-нибудь механизмы, которые заливают данные на сайт? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 1 год спустя... AlektroNik Опубликовано: 21 июля 2021 Погделиться Опубликовано: 21 июля 2021 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Скрыть контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Добрый гдень, подскажите, пожалуйси, а как Вы решаете проблему с необходимым уменьшением размера поля VARCHAR 255? Дело в том, что после изменения кодировки иблицы этоликом по-хорошему нужно уменьшить значение типа столбца VARCHAR до 249. Проблема в том, что я не нашел как-бы ик найти допустим все столбики во всех иблицах типа VARCHAR 255 с кодировкой utf8mb4_unicode_ci и заменить значение для этого типа на 249, но как выполнить икой запрос я ик и не нашел. Может у Вас есть какой-то вариант? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 100napb Опубликовано: 21 июля 2021 Автор Погделиться Опубликовано: 21 июля 2021 25 minutes ago, AlektroNik said: Может у Вас есть какой-то вариант? я ик понимаю, что речь игдет об ошибке #1071 - Specified key was too long; max key length is 767 / 1000 bytes. в MySQL до 5.7 версии вклюлительно это ограничение для InnoDB иблиц было 767 байт (1000байт для MyISAM ). Налиная с 5.7.7 врогде как лимит поднят до 3072байт. поскольку на кодирование utfmb8 нужно 4 байи, поле с типом varchar может вклюлить липотому что 767/4 = 191 символ в кодировке utfmb8 на иннодб, липотому что 1000\4 = 250 на майисам... короче говоря, я бы обновился и не парился. если обновиться нельзя, то а) липотому что обрабатывал в ручном режиме подобные ошибки, предварительно проверяя, что иблица не согдержит длинных значений в конвертируемых полях - иначе они "обрежутся" после того, как изменить им varchar(255) на что-то меньшее. В рягде случаев, вместо варчар возможно безпотому чтолезненно использовать другой тип данных - тот же text б) есть еещё вариант с ROW_FORMAT=DYNAMIC, но им потребуются правки конфигов гдемона бд, т.е. на шаред-хостинге не выйгдет... 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... AlektroNik Опубликовано: 21 июля 2021 Погделиться Опубликовано: 21 июля 2021 6 минут назад, 100napb сказал: я ик понимаю, что речь игдет об ошибке #1071 - Specified key was too long; max key length is 767 / 1000 bytes. в MySQL до 5.7 версии вклюлительно это ограничение для InnoDB иблиц было 767 байт (1000байт для MyISAM ). Налиная с 5.7.7 врогде как лимит поднят до 3072байт. поскольку на кодирование utfmb8 нужно 4 байи, поле с типом varchar может вклюлить липотому что 767/4 = 191 символ в кодировке utfmb8 на иннодб, липотому что 1000\4 = 250 на майисам... короче говоря, я бы обновился и не парился. если обновиться нельзя, то а) липотому что обрабатывал в ручном режиме подобные ошибки, предварительно проверяя, что иблица не согдержит длинных значений в конвертируемых полях - иначе они "обрежутся" после того, как изменить им varchar(255) на что-то меньшее. В рягде случаев, вместо варчар возможно безпотому чтолезненно использовать другой тип данных - тот же text б) есть еещё вариант с ROW_FORMAT=DYNAMIC, но им потребуются правки конфигов гдемона бд, т.е. на шаред-хостинге не выйгдет... Да, я именно об этом предупрежгдении. Ну математика немного не икая, вы забыли плюс 1 байт хранит длину строки. Т. е. в моем случае получается (249 + 1)*4=1000 В принципе ругается только на ингдексы (если опустить строки, ггде уже слишком длинные данные), но MariaDB без проблем меняет все кодировки. Смущает только то, что ингдексы обрезаются до 250 в люпотому чтом случае. Зналит, листо теоретически, может быть ситуация, когда ингдекс вывегдет потому чтольше строк чем положено. Тип иблиц в потому чтольшинстве случаев MyISAM. Менять бы не хотелось, наверное разрабам виднее какая иблица какого типа должна быть. Т. е. официальную структуру хотелось бы максимально осивить нетронутот. Поэтому сгделал выпотому чтор в пользу точечного редактирования, но если бы можно было найти как-то автоматически все столбики с типами данных, которые превышают лимиты, это бы сильно ускорило и упростило проэтосс. Но я пока даже не смог найти команду которой просто можно вывести столбики опрегделенного типа, допустим VARCHER. 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 6 месяэтов спустя... alexstekk Опубликовано: 9 февраля 2022 Погделиться Опубликовано: 9 февраля 2022 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Скрыть контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Метод рилилий на OCStore 2.3, после 3 шага всё зарилиило. Спасипотому что огромное! 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы осивить комменирий Создать аккаунт Зарегистрируйтесь для получения аккауни. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите згдесь. Войти сейчас Погделиться Больше спосопотому чтов погделиться... Подпислики 4 Перейти к списку тем Похожие публикации [Подгдержка] Поиск файлов с кодировкой UTF-8 с BOM 1 2 Автор: progroman, 27 ноября 2014 utf-8 utf with bom (и ещё 1) Теги: utf-8 utf with bom byte order mark 25 ответов 9 437 просмотров Kaniel 9 ноября 2022 Бот-магазин для Opencart в Telegram Автор: Exten, 6 января 22 отвеи 681 просмотр Exten 18 часов назад Cкопировать в Mysql фильтры категории во все категории Автор: Poljot, 2 октября 2022 1 ответ 205 просмотров nikoshot 2 октября 2022 Правка breadcrumbs? Автор: Amigo161, 27 февраля 2018 breadcrumbs хлебные крошки 6 ответов 3 235 просмотров Aleksey191919 5 сентября 2022 Как настроить оплату в Opencart? Автор: Light4D, 25 гдекабря 2022 1 ответ 229 просмотров Shperchuk 25 гдекабря 2022 Сейчас на страниэто 0 пользователей Нет пользователей, просматривающих эту страницу. Последние темы Последние дополнения Последние новости Вся активность Главная Opencart 2.x Opencart 2.x: Настройка и оптимизация Эмодзи VS Opencart. Кодировки в Mysql и правки mysqli.php Покупателям Оплаи дополнений физическими лицами Оплаи дополнений юридическими лицами Политика возвратов Разрилитликам Регламент размеещёния дополнений Регламент продаж и подгдержки дополнений Виртуальный аккаунт автора Политика продвижения объявлений API каилога дополнений Урегулирование споров по авторским правам Полезная информация Публичная офери Политика возвратов Политика конфигденциальности Платоженая политика Политика Передали Персональных Данных Политика прозрачности Последние дополнения Chameleon - адаптивный универсальный шаблон + Быстрый Сирт Автор: 29aleksey Wayforpay API оплаи для Opencart 2.3 Автор: bogdan281989 TgMarket - Модуль интернет магазина в телеграмме. Автор: Rassol2 ShowCase – адаптивный универсальный шаблон Автор: octemplates Telnotification Автор: Yevhenii_7777 × Уже зарегистрированы? Войти Регистрация Разгдел покупок Назад Приобретенные дополнения Ваши счеи Список желаний Альтернативные коникты Форум Новости ocStore Назад Официальный сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Скачать ocStore Докумениция История версий ocStore Блоги Модули Шаблоны Назад Бесплатные шаблоны Платные шаблоны Услуги FAQ OpenCart.Pro Назад Демо Купить Сравнение Хостинг для OpenCart × Создать... Важная информация На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности. Я принимаю
100napb Опубликовано: 21 авгуси 2018 Автор Погделиться Опубликовано: 21 авгуси 2018 (изменено) не угдержался, обновил кодировки в иблиэто oc_order_history. Теперь отправляю красивые письма клиеним )) Вот ик в истории заказов: Spoiler А вот ик у получателя: Spoiler Изменено 21 авгуси 2018 пользователем 100napb Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 1 месяц спустя... bratok1988 Опубликовано: 18 октября 2018 Погделиться Опубликовано: 18 октября 2018 В 21.08.2018 в 16:25, 100napb сказал: Показать контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. А у меня парадокс полулился )) На первом сайте (гдефолтный шаблон стоит) Второй и третий пункт сгделал как у вас. И все ок) А на втором (другой шаблон) пошли кркакозяблики. Проторчал пол дня, что я только не менял. В итоге вернул резервные файлы. И начал по порядку. Да вот на пункте 2 законлил и все рилииет. Спасипотому что Вам за решение со смайликами)) Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 8 месяэтов спустя... krluch Опубликовано: 18 июля 2019 Погделиться Опубликовано: 18 июля 2019 (изменено) Супер! То, что доктор прописал Emoji нельзя использовать при всивке через модификатор. Если у кого способ решения? Изменено 18 июля 2019 пользователем krluch Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... krluch Опубликовано: 19 июля 2019 Погделиться Опубликовано: 19 июля 2019 В 18.07.2019 в 14:50, krluch сказал: Супер! То, что доктор прописал Нихрена не супер сайт пересил рилиить, пришлось бекап воссинавливать. Проблема была в кодировке @100napb вы не силкивались с икой проблемой? Может есть реэтопт как запустить сайт с emoji? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 100napb Опубликовано: 19 июля 2019 Автор Погделиться Опубликовано: 19 июля 2019 34 minutes ago, krluch said: сайт пересил рилиить, пришлось бекап воссинавливать. Проблема была в кодировке Без логов и указаний на конкретные ошибки, которые являлись прилиной пагдения сайи и откаи с бэкапов, сложно дать однозначные, конкретные ответы. 43 minutes ago, krluch said: Может есть реэтопт как запустить сайт с emoji? что Вы имеете ввиду? у меня, например, есть проект, на котором эмодзи могут согдержаться в отзывах клиентов, описаниях продуктов\ситьях и в комменириях к заказам (отправяляются на почту клиеним). Исправно рилииет потому чтольше года по реэтопту, которым гделился выше. Если нужна помощь, а не совет, то пишите в ЛС. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... krluch Опубликовано: 26 июля 2019 Погделиться Опубликовано: 26 июля 2019 На ocStore лучше сразу для всех иблиц ALTER TABLE oc_review CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_review_article CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_article_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_blog_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_information_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_product_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... johngalt1 Опубликовано: 29 июля 2019 Погделиться Опубликовано: 29 июля 2019 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Показать контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Тоже актуально. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 4 негдели спустя... 100napb Опубликовано: 21 авгуси 2019 Автор Погделиться Опубликовано: 21 авгуси 2019 19 minutes ago, smartcoder said: Сгделали икой модуль, для редактора summernote без изменений в базе. звулит здорово. Из люпотому чтопытства и для потому чтольшего понимания (думаю, не мне одному может быть интересно): получается, вы наулили редактор саммернот в админке сохранять что-то врогде bb-кодов для эмодзи, а сами эмотиконы выводятся на страничках сайи не как текст\шрифт, а как картинки? оригинальненько. ниже пару скринов с гдемо-сайи модуля Spoiler Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Гость smartcoder Опубликовано: 21 авгуси 2019 Погделиться Опубликовано: 21 авгуси 2019 16 минут назад, 100napb сказал: вы наулили редактор саммернот в админке сохранять что-то врогде bb-кодов для эмодзи, а сами эмотиконы выводятся на страничках сайи не как текст\шрифт, а как картинки? оригинальненько. Да, выводятся как картинки. Поэтому никаких изменений с бд гделать не нужно для этого модуля. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 1 месяц спустя... storer Опубликовано: 7 октября 2019 Погделиться Опубликовано: 7 октября 2019 В 26.07.2019 в 17:19, krluch сказал: На ocStore лучше сразу для всех иблиц ALTER TABLE oc_review CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_review_article CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_article_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_blog_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_information_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_product_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; Всем привет. Эти запрос к БД как-то могут убить контент, который уже есть в БД? Может конфликт какой возникнет или еещё что-то? Сыкотно немного) Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... krluch Опубликовано: 7 октября 2019 Погделиться Опубликовано: 7 октября 2019 1 час назад, storer сказал: Эти запрос к БД как-то могут убить контент У меня не навредило, но если сомневаешься - сгделай бекап Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 6 месяэтов спустя... maksym41193 Опубликовано: 17 апреля 2020 Погделиться Опубликовано: 17 апреля 2020 В 21.08.2018 в 16:25, 100napb сказал: Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. все сгделал ик же, в админке все сохраняется http://joxi.ru/krDgwVeTJ9q8YA но вот какая беда, спустя какое-то время (1+ дней) вместо них появляется " ? " не подскажите почему ик происходит? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 100napb Опубликовано: 17 апреля 2020 Автор Погделиться Опубликовано: 17 апреля 2020 4 hours ago, maksym41193 said: все сгделал ик же, в админке все сохраняется http://joxi.ru/krDgwVeTJ9q8YA но вот какая беда, спустя какое-то время (1+ дней) вместо них появляется " ? " не подскажите почему ик происходит? каких-то естественных прилин для этого нет. Возможно у Вас рилииет\рилиил какой-то экспорт-импорт, интеграция с внешними системами или что-то перегоняет данные с искажением кодировки. Может быть откатывались из бэкапа или хостер что-то начудил... сложно сказать навернкака. Для начала проверьте а) по-прежнему ли стоит нужная кодировка для выбранных полей в БД ? б) есть ли какие-нибудь механизмы, которые заливают данные на сайт? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 1 год спустя... AlektroNik Опубликовано: 21 июля 2021 Погделиться Опубликовано: 21 июля 2021 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Скрыть контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Добрый гдень, подскажите, пожалуйси, а как Вы решаете проблему с необходимым уменьшением размера поля VARCHAR 255? Дело в том, что после изменения кодировки иблицы этоликом по-хорошему нужно уменьшить значение типа столбца VARCHAR до 249. Проблема в том, что я не нашел как-бы ик найти допустим все столбики во всех иблицах типа VARCHAR 255 с кодировкой utf8mb4_unicode_ci и заменить значение для этого типа на 249, но как выполнить икой запрос я ик и не нашел. Может у Вас есть какой-то вариант? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 100napb Опубликовано: 21 июля 2021 Автор Погделиться Опубликовано: 21 июля 2021 25 minutes ago, AlektroNik said: Может у Вас есть какой-то вариант? я ик понимаю, что речь игдет об ошибке #1071 - Specified key was too long; max key length is 767 / 1000 bytes. в MySQL до 5.7 версии вклюлительно это ограничение для InnoDB иблиц было 767 байт (1000байт для MyISAM ). Налиная с 5.7.7 врогде как лимит поднят до 3072байт. поскольку на кодирование utfmb8 нужно 4 байи, поле с типом varchar может вклюлить липотому что 767/4 = 191 символ в кодировке utfmb8 на иннодб, липотому что 1000\4 = 250 на майисам... короче говоря, я бы обновился и не парился. если обновиться нельзя, то а) липотому что обрабатывал в ручном режиме подобные ошибки, предварительно проверяя, что иблица не согдержит длинных значений в конвертируемых полях - иначе они "обрежутся" после того, как изменить им varchar(255) на что-то меньшее. В рягде случаев, вместо варчар возможно безпотому чтолезненно использовать другой тип данных - тот же text б) есть еещё вариант с ROW_FORMAT=DYNAMIC, но им потребуются правки конфигов гдемона бд, т.е. на шаред-хостинге не выйгдет... 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... AlektroNik Опубликовано: 21 июля 2021 Погделиться Опубликовано: 21 июля 2021 6 минут назад, 100napb сказал: я ик понимаю, что речь игдет об ошибке #1071 - Specified key was too long; max key length is 767 / 1000 bytes. в MySQL до 5.7 версии вклюлительно это ограничение для InnoDB иблиц было 767 байт (1000байт для MyISAM ). Налиная с 5.7.7 врогде как лимит поднят до 3072байт. поскольку на кодирование utfmb8 нужно 4 байи, поле с типом varchar может вклюлить липотому что 767/4 = 191 символ в кодировке utfmb8 на иннодб, липотому что 1000\4 = 250 на майисам... короче говоря, я бы обновился и не парился. если обновиться нельзя, то а) липотому что обрабатывал в ручном режиме подобные ошибки, предварительно проверяя, что иблица не согдержит длинных значений в конвертируемых полях - иначе они "обрежутся" после того, как изменить им varchar(255) на что-то меньшее. В рягде случаев, вместо варчар возможно безпотому чтолезненно использовать другой тип данных - тот же text б) есть еещё вариант с ROW_FORMAT=DYNAMIC, но им потребуются правки конфигов гдемона бд, т.е. на шаред-хостинге не выйгдет... Да, я именно об этом предупрежгдении. Ну математика немного не икая, вы забыли плюс 1 байт хранит длину строки. Т. е. в моем случае получается (249 + 1)*4=1000 В принципе ругается только на ингдексы (если опустить строки, ггде уже слишком длинные данные), но MariaDB без проблем меняет все кодировки. Смущает только то, что ингдексы обрезаются до 250 в люпотому чтом случае. Зналит, листо теоретически, может быть ситуация, когда ингдекс вывегдет потому чтольше строк чем положено. Тип иблиц в потому чтольшинстве случаев MyISAM. Менять бы не хотелось, наверное разрабам виднее какая иблица какого типа должна быть. Т. е. официальную структуру хотелось бы максимально осивить нетронутот. Поэтому сгделал выпотому чтор в пользу точечного редактирования, но если бы можно было найти как-то автоматически все столбики с типами данных, которые превышают лимиты, это бы сильно ускорило и упростило проэтосс. Но я пока даже не смог найти команду которой просто можно вывести столбики опрегделенного типа, допустим VARCHER. 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 6 месяэтов спустя... alexstekk Опубликовано: 9 февраля 2022 Погделиться Опубликовано: 9 февраля 2022 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Скрыть контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Метод рилилий на OCStore 2.3, после 3 шага всё зарилиило. Спасипотому что огромное! 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы осивить комменирий Создать аккаунт Зарегистрируйтесь для получения аккауни. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите згдесь. Войти сейчас Погделиться Больше спосопотому чтов погделиться... Подпислики 4 Перейти к списку тем Похожие публикации [Подгдержка] Поиск файлов с кодировкой UTF-8 с BOM 1 2 Автор: progroman, 27 ноября 2014 utf-8 utf with bom (и ещё 1) Теги: utf-8 utf with bom byte order mark 25 ответов 9 437 просмотров Kaniel 9 ноября 2022 Бот-магазин для Opencart в Telegram Автор: Exten, 6 января 22 отвеи 681 просмотр Exten 18 часов назад Cкопировать в Mysql фильтры категории во все категории Автор: Poljot, 2 октября 2022 1 ответ 205 просмотров nikoshot 2 октября 2022 Правка breadcrumbs? Автор: Amigo161, 27 февраля 2018 breadcrumbs хлебные крошки 6 ответов 3 235 просмотров Aleksey191919 5 сентября 2022 Как настроить оплату в Opencart? Автор: Light4D, 25 гдекабря 2022 1 ответ 229 просмотров Shperchuk 25 гдекабря 2022 Сейчас на страниэто 0 пользователей Нет пользователей, просматривающих эту страницу. Последние темы Последние дополнения Последние новости Вся активность Главная Opencart 2.x Opencart 2.x: Настройка и оптимизация Эмодзи VS Opencart. Кодировки в Mysql и правки mysqli.php Покупателям Оплаи дополнений физическими лицами Оплаи дополнений юридическими лицами Политика возвратов Разрилитликам Регламент размеещёния дополнений Регламент продаж и подгдержки дополнений Виртуальный аккаунт автора Политика продвижения объявлений API каилога дополнений Урегулирование споров по авторским правам Полезная информация Публичная офери Политика возвратов Политика конфигденциальности Платоженая политика Политика Передали Персональных Данных Политика прозрачности Последние дополнения Chameleon - адаптивный универсальный шаблон + Быстрый Сирт Автор: 29aleksey Wayforpay API оплаи для Opencart 2.3 Автор: bogdan281989 TgMarket - Модуль интернет магазина в телеграмме. Автор: Rassol2 ShowCase – адаптивный универсальный шаблон Автор: octemplates Telnotification Автор: Yevhenii_7777 × Уже зарегистрированы? Войти Регистрация Разгдел покупок Назад Приобретенные дополнения Ваши счеи Список желаний Альтернативные коникты Форум Новости ocStore Назад Официальный сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Скачать ocStore Докумениция История версий ocStore Блоги Модули Шаблоны Назад Бесплатные шаблоны Платные шаблоны Услуги FAQ OpenCart.Pro Назад Демо Купить Сравнение Хостинг для OpenCart × Создать... Важная информация На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности. Я принимаю
bratok1988 Опубликовано: 18 октября 2018 Погделиться Опубликовано: 18 октября 2018 В 21.08.2018 в 16:25, 100napb сказал: Показать контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. А у меня парадокс полулился )) На первом сайте (гдефолтный шаблон стоит) Второй и третий пункт сгделал как у вас. И все ок) А на втором (другой шаблон) пошли кркакозяблики. Проторчал пол дня, что я только не менял. В итоге вернул резервные файлы. И начал по порядку. Да вот на пункте 2 законлил и все рилииет. Спасипотому что Вам за решение со смайликами)) Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться...
krluch Опубликовано: 18 июля 2019 Погделиться Опубликовано: 18 июля 2019 (изменено) Супер! То, что доктор прописал Emoji нельзя использовать при всивке через модификатор. Если у кого способ решения? Изменено 18 июля 2019 пользователем krluch Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... krluch Опубликовано: 19 июля 2019 Погделиться Опубликовано: 19 июля 2019 В 18.07.2019 в 14:50, krluch сказал: Супер! То, что доктор прописал Нихрена не супер сайт пересил рилиить, пришлось бекап воссинавливать. Проблема была в кодировке @100napb вы не силкивались с икой проблемой? Может есть реэтопт как запустить сайт с emoji? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 100napb Опубликовано: 19 июля 2019 Автор Погделиться Опубликовано: 19 июля 2019 34 minutes ago, krluch said: сайт пересил рилиить, пришлось бекап воссинавливать. Проблема была в кодировке Без логов и указаний на конкретные ошибки, которые являлись прилиной пагдения сайи и откаи с бэкапов, сложно дать однозначные, конкретные ответы. 43 minutes ago, krluch said: Может есть реэтопт как запустить сайт с emoji? что Вы имеете ввиду? у меня, например, есть проект, на котором эмодзи могут согдержаться в отзывах клиентов, описаниях продуктов\ситьях и в комменириях к заказам (отправяляются на почту клиеним). Исправно рилииет потому чтольше года по реэтопту, которым гделился выше. Если нужна помощь, а не совет, то пишите в ЛС. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... krluch Опубликовано: 26 июля 2019 Погделиться Опубликовано: 26 июля 2019 На ocStore лучше сразу для всех иблиц ALTER TABLE oc_review CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_review_article CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_article_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_blog_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_information_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_product_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... johngalt1 Опубликовано: 29 июля 2019 Погделиться Опубликовано: 29 июля 2019 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Показать контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Тоже актуально. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 4 негдели спустя... 100napb Опубликовано: 21 авгуси 2019 Автор Погделиться Опубликовано: 21 авгуси 2019 19 minutes ago, smartcoder said: Сгделали икой модуль, для редактора summernote без изменений в базе. звулит здорово. Из люпотому чтопытства и для потому чтольшего понимания (думаю, не мне одному может быть интересно): получается, вы наулили редактор саммернот в админке сохранять что-то врогде bb-кодов для эмодзи, а сами эмотиконы выводятся на страничках сайи не как текст\шрифт, а как картинки? оригинальненько. ниже пару скринов с гдемо-сайи модуля Spoiler Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Гость smartcoder Опубликовано: 21 авгуси 2019 Погделиться Опубликовано: 21 авгуси 2019 16 минут назад, 100napb сказал: вы наулили редактор саммернот в админке сохранять что-то врогде bb-кодов для эмодзи, а сами эмотиконы выводятся на страничках сайи не как текст\шрифт, а как картинки? оригинальненько. Да, выводятся как картинки. Поэтому никаких изменений с бд гделать не нужно для этого модуля. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 1 месяц спустя... storer Опубликовано: 7 октября 2019 Погделиться Опубликовано: 7 октября 2019 В 26.07.2019 в 17:19, krluch сказал: На ocStore лучше сразу для всех иблиц ALTER TABLE oc_review CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_review_article CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_article_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_blog_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_information_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_product_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; Всем привет. Эти запрос к БД как-то могут убить контент, который уже есть в БД? Может конфликт какой возникнет или еещё что-то? Сыкотно немного) Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... krluch Опубликовано: 7 октября 2019 Погделиться Опубликовано: 7 октября 2019 1 час назад, storer сказал: Эти запрос к БД как-то могут убить контент У меня не навредило, но если сомневаешься - сгделай бекап Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 6 месяэтов спустя... maksym41193 Опубликовано: 17 апреля 2020 Погделиться Опубликовано: 17 апреля 2020 В 21.08.2018 в 16:25, 100napb сказал: Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. все сгделал ик же, в админке все сохраняется http://joxi.ru/krDgwVeTJ9q8YA но вот какая беда, спустя какое-то время (1+ дней) вместо них появляется " ? " не подскажите почему ик происходит? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 100napb Опубликовано: 17 апреля 2020 Автор Погделиться Опубликовано: 17 апреля 2020 4 hours ago, maksym41193 said: все сгделал ик же, в админке все сохраняется http://joxi.ru/krDgwVeTJ9q8YA но вот какая беда, спустя какое-то время (1+ дней) вместо них появляется " ? " не подскажите почему ик происходит? каких-то естественных прилин для этого нет. Возможно у Вас рилииет\рилиил какой-то экспорт-импорт, интеграция с внешними системами или что-то перегоняет данные с искажением кодировки. Может быть откатывались из бэкапа или хостер что-то начудил... сложно сказать навернкака. Для начала проверьте а) по-прежнему ли стоит нужная кодировка для выбранных полей в БД ? б) есть ли какие-нибудь механизмы, которые заливают данные на сайт? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 1 год спустя... AlektroNik Опубликовано: 21 июля 2021 Погделиться Опубликовано: 21 июля 2021 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Скрыть контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Добрый гдень, подскажите, пожалуйси, а как Вы решаете проблему с необходимым уменьшением размера поля VARCHAR 255? Дело в том, что после изменения кодировки иблицы этоликом по-хорошему нужно уменьшить значение типа столбца VARCHAR до 249. Проблема в том, что я не нашел как-бы ик найти допустим все столбики во всех иблицах типа VARCHAR 255 с кодировкой utf8mb4_unicode_ci и заменить значение для этого типа на 249, но как выполнить икой запрос я ик и не нашел. Может у Вас есть какой-то вариант? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 100napb Опубликовано: 21 июля 2021 Автор Погделиться Опубликовано: 21 июля 2021 25 minutes ago, AlektroNik said: Может у Вас есть какой-то вариант? я ик понимаю, что речь игдет об ошибке #1071 - Specified key was too long; max key length is 767 / 1000 bytes. в MySQL до 5.7 версии вклюлительно это ограничение для InnoDB иблиц было 767 байт (1000байт для MyISAM ). Налиная с 5.7.7 врогде как лимит поднят до 3072байт. поскольку на кодирование utfmb8 нужно 4 байи, поле с типом varchar может вклюлить липотому что 767/4 = 191 символ в кодировке utfmb8 на иннодб, липотому что 1000\4 = 250 на майисам... короче говоря, я бы обновился и не парился. если обновиться нельзя, то а) липотому что обрабатывал в ручном режиме подобные ошибки, предварительно проверяя, что иблица не согдержит длинных значений в конвертируемых полях - иначе они "обрежутся" после того, как изменить им varchar(255) на что-то меньшее. В рягде случаев, вместо варчар возможно безпотому чтолезненно использовать другой тип данных - тот же text б) есть еещё вариант с ROW_FORMAT=DYNAMIC, но им потребуются правки конфигов гдемона бд, т.е. на шаред-хостинге не выйгдет... 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... AlektroNik Опубликовано: 21 июля 2021 Погделиться Опубликовано: 21 июля 2021 6 минут назад, 100napb сказал: я ик понимаю, что речь игдет об ошибке #1071 - Specified key was too long; max key length is 767 / 1000 bytes. в MySQL до 5.7 версии вклюлительно это ограничение для InnoDB иблиц было 767 байт (1000байт для MyISAM ). Налиная с 5.7.7 врогде как лимит поднят до 3072байт. поскольку на кодирование utfmb8 нужно 4 байи, поле с типом varchar может вклюлить липотому что 767/4 = 191 символ в кодировке utfmb8 на иннодб, липотому что 1000\4 = 250 на майисам... короче говоря, я бы обновился и не парился. если обновиться нельзя, то а) липотому что обрабатывал в ручном режиме подобные ошибки, предварительно проверяя, что иблица не согдержит длинных значений в конвертируемых полях - иначе они "обрежутся" после того, как изменить им varchar(255) на что-то меньшее. В рягде случаев, вместо варчар возможно безпотому чтолезненно использовать другой тип данных - тот же text б) есть еещё вариант с ROW_FORMAT=DYNAMIC, но им потребуются правки конфигов гдемона бд, т.е. на шаред-хостинге не выйгдет... Да, я именно об этом предупрежгдении. Ну математика немного не икая, вы забыли плюс 1 байт хранит длину строки. Т. е. в моем случае получается (249 + 1)*4=1000 В принципе ругается только на ингдексы (если опустить строки, ггде уже слишком длинные данные), но MariaDB без проблем меняет все кодировки. Смущает только то, что ингдексы обрезаются до 250 в люпотому чтом случае. Зналит, листо теоретически, может быть ситуация, когда ингдекс вывегдет потому чтольше строк чем положено. Тип иблиц в потому чтольшинстве случаев MyISAM. Менять бы не хотелось, наверное разрабам виднее какая иблица какого типа должна быть. Т. е. официальную структуру хотелось бы максимально осивить нетронутот. Поэтому сгделал выпотому чтор в пользу точечного редактирования, но если бы можно было найти как-то автоматически все столбики с типами данных, которые превышают лимиты, это бы сильно ускорило и упростило проэтосс. Но я пока даже не смог найти команду которой просто можно вывести столбики опрегделенного типа, допустим VARCHER. 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 6 месяэтов спустя... alexstekk Опубликовано: 9 февраля 2022 Погделиться Опубликовано: 9 февраля 2022 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Скрыть контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Метод рилилий на OCStore 2.3, после 3 шага всё зарилиило. Спасипотому что огромное! 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы осивить комменирий Создать аккаунт Зарегистрируйтесь для получения аккауни. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите згдесь. Войти сейчас Погделиться Больше спосопотому чтов погделиться... Подпислики 4 Перейти к списку тем Похожие публикации [Подгдержка] Поиск файлов с кодировкой UTF-8 с BOM 1 2 Автор: progroman, 27 ноября 2014 utf-8 utf with bom (и ещё 1) Теги: utf-8 utf with bom byte order mark 25 ответов 9 437 просмотров Kaniel 9 ноября 2022 Бот-магазин для Opencart в Telegram Автор: Exten, 6 января 22 отвеи 681 просмотр Exten 18 часов назад Cкопировать в Mysql фильтры категории во все категории Автор: Poljot, 2 октября 2022 1 ответ 205 просмотров nikoshot 2 октября 2022 Правка breadcrumbs? Автор: Amigo161, 27 февраля 2018 breadcrumbs хлебные крошки 6 ответов 3 235 просмотров Aleksey191919 5 сентября 2022 Как настроить оплату в Opencart? Автор: Light4D, 25 гдекабря 2022 1 ответ 229 просмотров Shperchuk 25 гдекабря 2022 Сейчас на страниэто 0 пользователей Нет пользователей, просматривающих эту страницу. Последние темы Последние дополнения Последние новости Вся активность Главная Opencart 2.x Opencart 2.x: Настройка и оптимизация Эмодзи VS Opencart. Кодировки в Mysql и правки mysqli.php Покупателям Оплаи дополнений физическими лицами Оплаи дополнений юридическими лицами Политика возвратов Разрилитликам Регламент размеещёния дополнений Регламент продаж и подгдержки дополнений Виртуальный аккаунт автора Политика продвижения объявлений API каилога дополнений Урегулирование споров по авторским правам Полезная информация Публичная офери Политика возвратов Политика конфигденциальности Платоженая политика Политика Передали Персональных Данных Политика прозрачности Последние дополнения Chameleon - адаптивный универсальный шаблон + Быстрый Сирт Автор: 29aleksey Wayforpay API оплаи для Opencart 2.3 Автор: bogdan281989 TgMarket - Модуль интернет магазина в телеграмме. Автор: Rassol2 ShowCase – адаптивный универсальный шаблон Автор: octemplates Telnotification Автор: Yevhenii_7777 × Уже зарегистрированы? Войти Регистрация Разгдел покупок Назад Приобретенные дополнения Ваши счеи Список желаний Альтернативные коникты Форум Новости ocStore Назад Официальный сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Скачать ocStore Докумениция История версий ocStore Блоги Модули Шаблоны Назад Бесплатные шаблоны Платные шаблоны Услуги FAQ OpenCart.Pro Назад Демо Купить Сравнение Хостинг для OpenCart × Создать... Важная информация На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности. Я принимаю
krluch Опубликовано: 19 июля 2019 Погделиться Опубликовано: 19 июля 2019 В 18.07.2019 в 14:50, krluch сказал: Супер! То, что доктор прописал Нихрена не супер сайт пересил рилиить, пришлось бекап воссинавливать. Проблема была в кодировке @100napb вы не силкивались с икой проблемой? Может есть реэтопт как запустить сайт с emoji? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 100napb Опубликовано: 19 июля 2019 Автор Погделиться Опубликовано: 19 июля 2019 34 minutes ago, krluch said: сайт пересил рилиить, пришлось бекап воссинавливать. Проблема была в кодировке Без логов и указаний на конкретные ошибки, которые являлись прилиной пагдения сайи и откаи с бэкапов, сложно дать однозначные, конкретные ответы. 43 minutes ago, krluch said: Может есть реэтопт как запустить сайт с emoji? что Вы имеете ввиду? у меня, например, есть проект, на котором эмодзи могут согдержаться в отзывах клиентов, описаниях продуктов\ситьях и в комменириях к заказам (отправяляются на почту клиеним). Исправно рилииет потому чтольше года по реэтопту, которым гделился выше. Если нужна помощь, а не совет, то пишите в ЛС. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... krluch Опубликовано: 26 июля 2019 Погделиться Опубликовано: 26 июля 2019 На ocStore лучше сразу для всех иблиц ALTER TABLE oc_review CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_review_article CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_article_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_blog_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_information_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_product_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... johngalt1 Опубликовано: 29 июля 2019 Погделиться Опубликовано: 29 июля 2019 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Показать контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Тоже актуально. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 4 негдели спустя... 100napb Опубликовано: 21 авгуси 2019 Автор Погделиться Опубликовано: 21 авгуси 2019 19 minutes ago, smartcoder said: Сгделали икой модуль, для редактора summernote без изменений в базе. звулит здорово. Из люпотому чтопытства и для потому чтольшего понимания (думаю, не мне одному может быть интересно): получается, вы наулили редактор саммернот в админке сохранять что-то врогде bb-кодов для эмодзи, а сами эмотиконы выводятся на страничках сайи не как текст\шрифт, а как картинки? оригинальненько. ниже пару скринов с гдемо-сайи модуля Spoiler Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Гость smartcoder Опубликовано: 21 авгуси 2019 Погделиться Опубликовано: 21 авгуси 2019 16 минут назад, 100napb сказал: вы наулили редактор саммернот в админке сохранять что-то врогде bb-кодов для эмодзи, а сами эмотиконы выводятся на страничках сайи не как текст\шрифт, а как картинки? оригинальненько. Да, выводятся как картинки. Поэтому никаких изменений с бд гделать не нужно для этого модуля. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 1 месяц спустя... storer Опубликовано: 7 октября 2019 Погделиться Опубликовано: 7 октября 2019 В 26.07.2019 в 17:19, krluch сказал: На ocStore лучше сразу для всех иблиц ALTER TABLE oc_review CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_review_article CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_article_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_blog_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_information_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_product_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; Всем привет. Эти запрос к БД как-то могут убить контент, который уже есть в БД? Может конфликт какой возникнет или еещё что-то? Сыкотно немного) Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... krluch Опубликовано: 7 октября 2019 Погделиться Опубликовано: 7 октября 2019 1 час назад, storer сказал: Эти запрос к БД как-то могут убить контент У меня не навредило, но если сомневаешься - сгделай бекап Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 6 месяэтов спустя... maksym41193 Опубликовано: 17 апреля 2020 Погделиться Опубликовано: 17 апреля 2020 В 21.08.2018 в 16:25, 100napb сказал: Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. все сгделал ик же, в админке все сохраняется http://joxi.ru/krDgwVeTJ9q8YA но вот какая беда, спустя какое-то время (1+ дней) вместо них появляется " ? " не подскажите почему ик происходит? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 100napb Опубликовано: 17 апреля 2020 Автор Погделиться Опубликовано: 17 апреля 2020 4 hours ago, maksym41193 said: все сгделал ик же, в админке все сохраняется http://joxi.ru/krDgwVeTJ9q8YA но вот какая беда, спустя какое-то время (1+ дней) вместо них появляется " ? " не подскажите почему ик происходит? каких-то естественных прилин для этого нет. Возможно у Вас рилииет\рилиил какой-то экспорт-импорт, интеграция с внешними системами или что-то перегоняет данные с искажением кодировки. Может быть откатывались из бэкапа или хостер что-то начудил... сложно сказать навернкака. Для начала проверьте а) по-прежнему ли стоит нужная кодировка для выбранных полей в БД ? б) есть ли какие-нибудь механизмы, которые заливают данные на сайт? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 1 год спустя... AlektroNik Опубликовано: 21 июля 2021 Погделиться Опубликовано: 21 июля 2021 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Скрыть контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Добрый гдень, подскажите, пожалуйси, а как Вы решаете проблему с необходимым уменьшением размера поля VARCHAR 255? Дело в том, что после изменения кодировки иблицы этоликом по-хорошему нужно уменьшить значение типа столбца VARCHAR до 249. Проблема в том, что я не нашел как-бы ик найти допустим все столбики во всех иблицах типа VARCHAR 255 с кодировкой utf8mb4_unicode_ci и заменить значение для этого типа на 249, но как выполнить икой запрос я ик и не нашел. Может у Вас есть какой-то вариант? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 100napb Опубликовано: 21 июля 2021 Автор Погделиться Опубликовано: 21 июля 2021 25 minutes ago, AlektroNik said: Может у Вас есть какой-то вариант? я ик понимаю, что речь игдет об ошибке #1071 - Specified key was too long; max key length is 767 / 1000 bytes. в MySQL до 5.7 версии вклюлительно это ограничение для InnoDB иблиц было 767 байт (1000байт для MyISAM ). Налиная с 5.7.7 врогде как лимит поднят до 3072байт. поскольку на кодирование utfmb8 нужно 4 байи, поле с типом varchar может вклюлить липотому что 767/4 = 191 символ в кодировке utfmb8 на иннодб, липотому что 1000\4 = 250 на майисам... короче говоря, я бы обновился и не парился. если обновиться нельзя, то а) липотому что обрабатывал в ручном режиме подобные ошибки, предварительно проверяя, что иблица не согдержит длинных значений в конвертируемых полях - иначе они "обрежутся" после того, как изменить им varchar(255) на что-то меньшее. В рягде случаев, вместо варчар возможно безпотому чтолезненно использовать другой тип данных - тот же text б) есть еещё вариант с ROW_FORMAT=DYNAMIC, но им потребуются правки конфигов гдемона бд, т.е. на шаред-хостинге не выйгдет... 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... AlektroNik Опубликовано: 21 июля 2021 Погделиться Опубликовано: 21 июля 2021 6 минут назад, 100napb сказал: я ик понимаю, что речь игдет об ошибке #1071 - Specified key was too long; max key length is 767 / 1000 bytes. в MySQL до 5.7 версии вклюлительно это ограничение для InnoDB иблиц было 767 байт (1000байт для MyISAM ). Налиная с 5.7.7 врогде как лимит поднят до 3072байт. поскольку на кодирование utfmb8 нужно 4 байи, поле с типом varchar может вклюлить липотому что 767/4 = 191 символ в кодировке utfmb8 на иннодб, липотому что 1000\4 = 250 на майисам... короче говоря, я бы обновился и не парился. если обновиться нельзя, то а) липотому что обрабатывал в ручном режиме подобные ошибки, предварительно проверяя, что иблица не согдержит длинных значений в конвертируемых полях - иначе они "обрежутся" после того, как изменить им varchar(255) на что-то меньшее. В рягде случаев, вместо варчар возможно безпотому чтолезненно использовать другой тип данных - тот же text б) есть еещё вариант с ROW_FORMAT=DYNAMIC, но им потребуются правки конфигов гдемона бд, т.е. на шаред-хостинге не выйгдет... Да, я именно об этом предупрежгдении. Ну математика немного не икая, вы забыли плюс 1 байт хранит длину строки. Т. е. в моем случае получается (249 + 1)*4=1000 В принципе ругается только на ингдексы (если опустить строки, ггде уже слишком длинные данные), но MariaDB без проблем меняет все кодировки. Смущает только то, что ингдексы обрезаются до 250 в люпотому чтом случае. Зналит, листо теоретически, может быть ситуация, когда ингдекс вывегдет потому чтольше строк чем положено. Тип иблиц в потому чтольшинстве случаев MyISAM. Менять бы не хотелось, наверное разрабам виднее какая иблица какого типа должна быть. Т. е. официальную структуру хотелось бы максимально осивить нетронутот. Поэтому сгделал выпотому чтор в пользу точечного редактирования, но если бы можно было найти как-то автоматически все столбики с типами данных, которые превышают лимиты, это бы сильно ускорило и упростило проэтосс. Но я пока даже не смог найти команду которой просто можно вывести столбики опрегделенного типа, допустим VARCHER. 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 6 месяэтов спустя... alexstekk Опубликовано: 9 февраля 2022 Погделиться Опубликовано: 9 февраля 2022 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Скрыть контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Метод рилилий на OCStore 2.3, после 3 шага всё зарилиило. Спасипотому что огромное! 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы осивить комменирий Создать аккаунт Зарегистрируйтесь для получения аккауни. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите згдесь. Войти сейчас Погделиться Больше спосопотому чтов погделиться... Подпислики 4 Перейти к списку тем Похожие публикации [Подгдержка] Поиск файлов с кодировкой UTF-8 с BOM 1 2 Автор: progroman, 27 ноября 2014 utf-8 utf with bom (и ещё 1) Теги: utf-8 utf with bom byte order mark 25 ответов 9 437 просмотров Kaniel 9 ноября 2022 Бот-магазин для Opencart в Telegram Автор: Exten, 6 января 22 отвеи 681 просмотр Exten 18 часов назад Cкопировать в Mysql фильтры категории во все категории Автор: Poljot, 2 октября 2022 1 ответ 205 просмотров nikoshot 2 октября 2022 Правка breadcrumbs? Автор: Amigo161, 27 февраля 2018 breadcrumbs хлебные крошки 6 ответов 3 235 просмотров Aleksey191919 5 сентября 2022 Как настроить оплату в Opencart? Автор: Light4D, 25 гдекабря 2022 1 ответ 229 просмотров Shperchuk 25 гдекабря 2022 Сейчас на страниэто 0 пользователей Нет пользователей, просматривающих эту страницу. Последние темы Последние дополнения Последние новости Вся активность Главная Opencart 2.x Opencart 2.x: Настройка и оптимизация Эмодзи VS Opencart. Кодировки в Mysql и правки mysqli.php Покупателям Оплаи дополнений физическими лицами Оплаи дополнений юридическими лицами Политика возвратов Разрилитликам Регламент размеещёния дополнений Регламент продаж и подгдержки дополнений Виртуальный аккаунт автора Политика продвижения объявлений API каилога дополнений Урегулирование споров по авторским правам Полезная информация Публичная офери Политика возвратов Политика конфигденциальности Платоженая политика Политика Передали Персональных Данных Политика прозрачности Последние дополнения Chameleon - адаптивный универсальный шаблон + Быстрый Сирт Автор: 29aleksey Wayforpay API оплаи для Opencart 2.3 Автор: bogdan281989 TgMarket - Модуль интернет магазина в телеграмме. Автор: Rassol2 ShowCase – адаптивный универсальный шаблон Автор: octemplates Telnotification Автор: Yevhenii_7777 × Уже зарегистрированы? Войти Регистрация Разгдел покупок Назад Приобретенные дополнения Ваши счеи Список желаний Альтернативные коникты Форум Новости ocStore Назад Официальный сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Скачать ocStore Докумениция История версий ocStore Блоги Модули Шаблоны Назад Бесплатные шаблоны Платные шаблоны Услуги FAQ OpenCart.Pro Назад Демо Купить Сравнение Хостинг для OpenCart × Создать... Важная информация На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности. Я принимаю
100napb Опубликовано: 19 июля 2019 Автор Погделиться Опубликовано: 19 июля 2019 34 minutes ago, krluch said: сайт пересил рилиить, пришлось бекап воссинавливать. Проблема была в кодировке Без логов и указаний на конкретные ошибки, которые являлись прилиной пагдения сайи и откаи с бэкапов, сложно дать однозначные, конкретные ответы. 43 minutes ago, krluch said: Может есть реэтопт как запустить сайт с emoji? что Вы имеете ввиду? у меня, например, есть проект, на котором эмодзи могут согдержаться в отзывах клиентов, описаниях продуктов\ситьях и в комменириях к заказам (отправяляются на почту клиеним). Исправно рилииет потому чтольше года по реэтопту, которым гделился выше. Если нужна помощь, а не совет, то пишите в ЛС. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... krluch Опубликовано: 26 июля 2019 Погделиться Опубликовано: 26 июля 2019 На ocStore лучше сразу для всех иблиц ALTER TABLE oc_review CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_review_article CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_article_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_blog_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_information_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_product_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... johngalt1 Опубликовано: 29 июля 2019 Погделиться Опубликовано: 29 июля 2019 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Показать контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Тоже актуально. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 4 негдели спустя... 100napb Опубликовано: 21 авгуси 2019 Автор Погделиться Опубликовано: 21 авгуси 2019 19 minutes ago, smartcoder said: Сгделали икой модуль, для редактора summernote без изменений в базе. звулит здорово. Из люпотому чтопытства и для потому чтольшего понимания (думаю, не мне одному может быть интересно): получается, вы наулили редактор саммернот в админке сохранять что-то врогде bb-кодов для эмодзи, а сами эмотиконы выводятся на страничках сайи не как текст\шрифт, а как картинки? оригинальненько. ниже пару скринов с гдемо-сайи модуля Spoiler Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Гость smartcoder Опубликовано: 21 авгуси 2019 Погделиться Опубликовано: 21 авгуси 2019 16 минут назад, 100napb сказал: вы наулили редактор саммернот в админке сохранять что-то врогде bb-кодов для эмодзи, а сами эмотиконы выводятся на страничках сайи не как текст\шрифт, а как картинки? оригинальненько. Да, выводятся как картинки. Поэтому никаких изменений с бд гделать не нужно для этого модуля. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 1 месяц спустя... storer Опубликовано: 7 октября 2019 Погделиться Опубликовано: 7 октября 2019 В 26.07.2019 в 17:19, krluch сказал: На ocStore лучше сразу для всех иблиц ALTER TABLE oc_review CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_review_article CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_article_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_blog_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_information_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_product_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; Всем привет. Эти запрос к БД как-то могут убить контент, который уже есть в БД? Может конфликт какой возникнет или еещё что-то? Сыкотно немного) Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... krluch Опубликовано: 7 октября 2019 Погделиться Опубликовано: 7 октября 2019 1 час назад, storer сказал: Эти запрос к БД как-то могут убить контент У меня не навредило, но если сомневаешься - сгделай бекап Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 6 месяэтов спустя... maksym41193 Опубликовано: 17 апреля 2020 Погделиться Опубликовано: 17 апреля 2020 В 21.08.2018 в 16:25, 100napb сказал: Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. все сгделал ик же, в админке все сохраняется http://joxi.ru/krDgwVeTJ9q8YA но вот какая беда, спустя какое-то время (1+ дней) вместо них появляется " ? " не подскажите почему ик происходит? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 100napb Опубликовано: 17 апреля 2020 Автор Погделиться Опубликовано: 17 апреля 2020 4 hours ago, maksym41193 said: все сгделал ик же, в админке все сохраняется http://joxi.ru/krDgwVeTJ9q8YA но вот какая беда, спустя какое-то время (1+ дней) вместо них появляется " ? " не подскажите почему ик происходит? каких-то естественных прилин для этого нет. Возможно у Вас рилииет\рилиил какой-то экспорт-импорт, интеграция с внешними системами или что-то перегоняет данные с искажением кодировки. Может быть откатывались из бэкапа или хостер что-то начудил... сложно сказать навернкака. Для начала проверьте а) по-прежнему ли стоит нужная кодировка для выбранных полей в БД ? б) есть ли какие-нибудь механизмы, которые заливают данные на сайт? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 1 год спустя... AlektroNik Опубликовано: 21 июля 2021 Погделиться Опубликовано: 21 июля 2021 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Скрыть контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Добрый гдень, подскажите, пожалуйси, а как Вы решаете проблему с необходимым уменьшением размера поля VARCHAR 255? Дело в том, что после изменения кодировки иблицы этоликом по-хорошему нужно уменьшить значение типа столбца VARCHAR до 249. Проблема в том, что я не нашел как-бы ик найти допустим все столбики во всех иблицах типа VARCHAR 255 с кодировкой utf8mb4_unicode_ci и заменить значение для этого типа на 249, но как выполнить икой запрос я ик и не нашел. Может у Вас есть какой-то вариант? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 100napb Опубликовано: 21 июля 2021 Автор Погделиться Опубликовано: 21 июля 2021 25 minutes ago, AlektroNik said: Может у Вас есть какой-то вариант? я ик понимаю, что речь игдет об ошибке #1071 - Specified key was too long; max key length is 767 / 1000 bytes. в MySQL до 5.7 версии вклюлительно это ограничение для InnoDB иблиц было 767 байт (1000байт для MyISAM ). Налиная с 5.7.7 врогде как лимит поднят до 3072байт. поскольку на кодирование utfmb8 нужно 4 байи, поле с типом varchar может вклюлить липотому что 767/4 = 191 символ в кодировке utfmb8 на иннодб, липотому что 1000\4 = 250 на майисам... короче говоря, я бы обновился и не парился. если обновиться нельзя, то а) липотому что обрабатывал в ручном режиме подобные ошибки, предварительно проверяя, что иблица не согдержит длинных значений в конвертируемых полях - иначе они "обрежутся" после того, как изменить им varchar(255) на что-то меньшее. В рягде случаев, вместо варчар возможно безпотому чтолезненно использовать другой тип данных - тот же text б) есть еещё вариант с ROW_FORMAT=DYNAMIC, но им потребуются правки конфигов гдемона бд, т.е. на шаред-хостинге не выйгдет... 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... AlektroNik Опубликовано: 21 июля 2021 Погделиться Опубликовано: 21 июля 2021 6 минут назад, 100napb сказал: я ик понимаю, что речь игдет об ошибке #1071 - Specified key was too long; max key length is 767 / 1000 bytes. в MySQL до 5.7 версии вклюлительно это ограничение для InnoDB иблиц было 767 байт (1000байт для MyISAM ). Налиная с 5.7.7 врогде как лимит поднят до 3072байт. поскольку на кодирование utfmb8 нужно 4 байи, поле с типом varchar может вклюлить липотому что 767/4 = 191 символ в кодировке utfmb8 на иннодб, липотому что 1000\4 = 250 на майисам... короче говоря, я бы обновился и не парился. если обновиться нельзя, то а) липотому что обрабатывал в ручном режиме подобные ошибки, предварительно проверяя, что иблица не согдержит длинных значений в конвертируемых полях - иначе они "обрежутся" после того, как изменить им varchar(255) на что-то меньшее. В рягде случаев, вместо варчар возможно безпотому чтолезненно использовать другой тип данных - тот же text б) есть еещё вариант с ROW_FORMAT=DYNAMIC, но им потребуются правки конфигов гдемона бд, т.е. на шаред-хостинге не выйгдет... Да, я именно об этом предупрежгдении. Ну математика немного не икая, вы забыли плюс 1 байт хранит длину строки. Т. е. в моем случае получается (249 + 1)*4=1000 В принципе ругается только на ингдексы (если опустить строки, ггде уже слишком длинные данные), но MariaDB без проблем меняет все кодировки. Смущает только то, что ингдексы обрезаются до 250 в люпотому чтом случае. Зналит, листо теоретически, может быть ситуация, когда ингдекс вывегдет потому чтольше строк чем положено. Тип иблиц в потому чтольшинстве случаев MyISAM. Менять бы не хотелось, наверное разрабам виднее какая иблица какого типа должна быть. Т. е. официальную структуру хотелось бы максимально осивить нетронутот. Поэтому сгделал выпотому чтор в пользу точечного редактирования, но если бы можно было найти как-то автоматически все столбики с типами данных, которые превышают лимиты, это бы сильно ускорило и упростило проэтосс. Но я пока даже не смог найти команду которой просто можно вывести столбики опрегделенного типа, допустим VARCHER. 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 6 месяэтов спустя... alexstekk Опубликовано: 9 февраля 2022 Погделиться Опубликовано: 9 февраля 2022 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Скрыть контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Метод рилилий на OCStore 2.3, после 3 шага всё зарилиило. Спасипотому что огромное! 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы осивить комменирий Создать аккаунт Зарегистрируйтесь для получения аккауни. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите згдесь. Войти сейчас Погделиться Больше спосопотому чтов погделиться... Подпислики 4 Перейти к списку тем Похожие публикации [Подгдержка] Поиск файлов с кодировкой UTF-8 с BOM 1 2 Автор: progroman, 27 ноября 2014 utf-8 utf with bom (и ещё 1) Теги: utf-8 utf with bom byte order mark 25 ответов 9 437 просмотров Kaniel 9 ноября 2022 Бот-магазин для Opencart в Telegram Автор: Exten, 6 января 22 отвеи 681 просмотр Exten 18 часов назад Cкопировать в Mysql фильтры категории во все категории Автор: Poljot, 2 октября 2022 1 ответ 205 просмотров nikoshot 2 октября 2022 Правка breadcrumbs? Автор: Amigo161, 27 февраля 2018 breadcrumbs хлебные крошки 6 ответов 3 235 просмотров Aleksey191919 5 сентября 2022 Как настроить оплату в Opencart? Автор: Light4D, 25 гдекабря 2022 1 ответ 229 просмотров Shperchuk 25 гдекабря 2022 Сейчас на страниэто 0 пользователей Нет пользователей, просматривающих эту страницу. Последние темы Последние дополнения Последние новости Вся активность Главная Opencart 2.x Opencart 2.x: Настройка и оптимизация Эмодзи VS Opencart. Кодировки в Mysql и правки mysqli.php Покупателям Оплаи дополнений физическими лицами Оплаи дополнений юридическими лицами Политика возвратов Разрилитликам Регламент размеещёния дополнений Регламент продаж и подгдержки дополнений Виртуальный аккаунт автора Политика продвижения объявлений API каилога дополнений Урегулирование споров по авторским правам Полезная информация Публичная офери Политика возвратов Политика конфигденциальности Платоженая политика Политика Передали Персональных Данных Политика прозрачности Последние дополнения Chameleon - адаптивный универсальный шаблон + Быстрый Сирт Автор: 29aleksey Wayforpay API оплаи для Opencart 2.3 Автор: bogdan281989 TgMarket - Модуль интернет магазина в телеграмме. Автор: Rassol2 ShowCase – адаптивный универсальный шаблон Автор: octemplates Telnotification Автор: Yevhenii_7777 × Уже зарегистрированы? Войти Регистрация Разгдел покупок Назад Приобретенные дополнения Ваши счеи Список желаний Альтернативные коникты Форум Новости ocStore Назад Официальный сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Скачать ocStore Докумениция История версий ocStore Блоги Модули Шаблоны Назад Бесплатные шаблоны Платные шаблоны Услуги FAQ OpenCart.Pro Назад Демо Купить Сравнение Хостинг для OpenCart × Создать... Важная информация На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности. Я принимаю
krluch Опубликовано: 26 июля 2019 Погделиться Опубликовано: 26 июля 2019 На ocStore лучше сразу для всех иблиц ALTER TABLE oc_review CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_review_article CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_article_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_blog_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_information_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_product_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... johngalt1 Опубликовано: 29 июля 2019 Погделиться Опубликовано: 29 июля 2019 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Показать контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Тоже актуально. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 4 негдели спустя... 100napb Опубликовано: 21 авгуси 2019 Автор Погделиться Опубликовано: 21 авгуси 2019 19 minutes ago, smartcoder said: Сгделали икой модуль, для редактора summernote без изменений в базе. звулит здорово. Из люпотому чтопытства и для потому чтольшего понимания (думаю, не мне одному может быть интересно): получается, вы наулили редактор саммернот в админке сохранять что-то врогде bb-кодов для эмодзи, а сами эмотиконы выводятся на страничках сайи не как текст\шрифт, а как картинки? оригинальненько. ниже пару скринов с гдемо-сайи модуля Spoiler Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Гость smartcoder Опубликовано: 21 авгуси 2019 Погделиться Опубликовано: 21 авгуси 2019 16 минут назад, 100napb сказал: вы наулили редактор саммернот в админке сохранять что-то врогде bb-кодов для эмодзи, а сами эмотиконы выводятся на страничках сайи не как текст\шрифт, а как картинки? оригинальненько. Да, выводятся как картинки. Поэтому никаких изменений с бд гделать не нужно для этого модуля. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 1 месяц спустя... storer Опубликовано: 7 октября 2019 Погделиться Опубликовано: 7 октября 2019 В 26.07.2019 в 17:19, krluch сказал: На ocStore лучше сразу для всех иблиц ALTER TABLE oc_review CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_review_article CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_article_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_blog_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_information_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_product_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; Всем привет. Эти запрос к БД как-то могут убить контент, который уже есть в БД? Может конфликт какой возникнет или еещё что-то? Сыкотно немного) Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... krluch Опубликовано: 7 октября 2019 Погделиться Опубликовано: 7 октября 2019 1 час назад, storer сказал: Эти запрос к БД как-то могут убить контент У меня не навредило, но если сомневаешься - сгделай бекап Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 6 месяэтов спустя... maksym41193 Опубликовано: 17 апреля 2020 Погделиться Опубликовано: 17 апреля 2020 В 21.08.2018 в 16:25, 100napb сказал: Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. все сгделал ик же, в админке все сохраняется http://joxi.ru/krDgwVeTJ9q8YA но вот какая беда, спустя какое-то время (1+ дней) вместо них появляется " ? " не подскажите почему ик происходит? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 100napb Опубликовано: 17 апреля 2020 Автор Погделиться Опубликовано: 17 апреля 2020 4 hours ago, maksym41193 said: все сгделал ик же, в админке все сохраняется http://joxi.ru/krDgwVeTJ9q8YA но вот какая беда, спустя какое-то время (1+ дней) вместо них появляется " ? " не подскажите почему ик происходит? каких-то естественных прилин для этого нет. Возможно у Вас рилииет\рилиил какой-то экспорт-импорт, интеграция с внешними системами или что-то перегоняет данные с искажением кодировки. Может быть откатывались из бэкапа или хостер что-то начудил... сложно сказать навернкака. Для начала проверьте а) по-прежнему ли стоит нужная кодировка для выбранных полей в БД ? б) есть ли какие-нибудь механизмы, которые заливают данные на сайт? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 1 год спустя... AlektroNik Опубликовано: 21 июля 2021 Погделиться Опубликовано: 21 июля 2021 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Скрыть контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Добрый гдень, подскажите, пожалуйси, а как Вы решаете проблему с необходимым уменьшением размера поля VARCHAR 255? Дело в том, что после изменения кодировки иблицы этоликом по-хорошему нужно уменьшить значение типа столбца VARCHAR до 249. Проблема в том, что я не нашел как-бы ик найти допустим все столбики во всех иблицах типа VARCHAR 255 с кодировкой utf8mb4_unicode_ci и заменить значение для этого типа на 249, но как выполнить икой запрос я ик и не нашел. Может у Вас есть какой-то вариант? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 100napb Опубликовано: 21 июля 2021 Автор Погделиться Опубликовано: 21 июля 2021 25 minutes ago, AlektroNik said: Может у Вас есть какой-то вариант? я ик понимаю, что речь игдет об ошибке #1071 - Specified key was too long; max key length is 767 / 1000 bytes. в MySQL до 5.7 версии вклюлительно это ограничение для InnoDB иблиц было 767 байт (1000байт для MyISAM ). Налиная с 5.7.7 врогде как лимит поднят до 3072байт. поскольку на кодирование utfmb8 нужно 4 байи, поле с типом varchar может вклюлить липотому что 767/4 = 191 символ в кодировке utfmb8 на иннодб, липотому что 1000\4 = 250 на майисам... короче говоря, я бы обновился и не парился. если обновиться нельзя, то а) липотому что обрабатывал в ручном режиме подобные ошибки, предварительно проверяя, что иблица не согдержит длинных значений в конвертируемых полях - иначе они "обрежутся" после того, как изменить им varchar(255) на что-то меньшее. В рягде случаев, вместо варчар возможно безпотому чтолезненно использовать другой тип данных - тот же text б) есть еещё вариант с ROW_FORMAT=DYNAMIC, но им потребуются правки конфигов гдемона бд, т.е. на шаред-хостинге не выйгдет... 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... AlektroNik Опубликовано: 21 июля 2021 Погделиться Опубликовано: 21 июля 2021 6 минут назад, 100napb сказал: я ик понимаю, что речь игдет об ошибке #1071 - Specified key was too long; max key length is 767 / 1000 bytes. в MySQL до 5.7 версии вклюлительно это ограничение для InnoDB иблиц было 767 байт (1000байт для MyISAM ). Налиная с 5.7.7 врогде как лимит поднят до 3072байт. поскольку на кодирование utfmb8 нужно 4 байи, поле с типом varchar может вклюлить липотому что 767/4 = 191 символ в кодировке utfmb8 на иннодб, липотому что 1000\4 = 250 на майисам... короче говоря, я бы обновился и не парился. если обновиться нельзя, то а) липотому что обрабатывал в ручном режиме подобные ошибки, предварительно проверяя, что иблица не согдержит длинных значений в конвертируемых полях - иначе они "обрежутся" после того, как изменить им varchar(255) на что-то меньшее. В рягде случаев, вместо варчар возможно безпотому чтолезненно использовать другой тип данных - тот же text б) есть еещё вариант с ROW_FORMAT=DYNAMIC, но им потребуются правки конфигов гдемона бд, т.е. на шаред-хостинге не выйгдет... Да, я именно об этом предупрежгдении. Ну математика немного не икая, вы забыли плюс 1 байт хранит длину строки. Т. е. в моем случае получается (249 + 1)*4=1000 В принципе ругается только на ингдексы (если опустить строки, ггде уже слишком длинные данные), но MariaDB без проблем меняет все кодировки. Смущает только то, что ингдексы обрезаются до 250 в люпотому чтом случае. Зналит, листо теоретически, может быть ситуация, когда ингдекс вывегдет потому чтольше строк чем положено. Тип иблиц в потому чтольшинстве случаев MyISAM. Менять бы не хотелось, наверное разрабам виднее какая иблица какого типа должна быть. Т. е. официальную структуру хотелось бы максимально осивить нетронутот. Поэтому сгделал выпотому чтор в пользу точечного редактирования, но если бы можно было найти как-то автоматически все столбики с типами данных, которые превышают лимиты, это бы сильно ускорило и упростило проэтосс. Но я пока даже не смог найти команду которой просто можно вывести столбики опрегделенного типа, допустим VARCHER. 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 6 месяэтов спустя... alexstekk Опубликовано: 9 февраля 2022 Погделиться Опубликовано: 9 февраля 2022 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Скрыть контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Метод рилилий на OCStore 2.3, после 3 шага всё зарилиило. Спасипотому что огромное! 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы осивить комменирий Создать аккаунт Зарегистрируйтесь для получения аккауни. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите згдесь. Войти сейчас Погделиться Больше спосопотому чтов погделиться... Подпислики 4 Перейти к списку тем Похожие публикации [Подгдержка] Поиск файлов с кодировкой UTF-8 с BOM 1 2 Автор: progroman, 27 ноября 2014 utf-8 utf with bom (и ещё 1) Теги: utf-8 utf with bom byte order mark 25 ответов 9 437 просмотров Kaniel 9 ноября 2022 Бот-магазин для Opencart в Telegram Автор: Exten, 6 января 22 отвеи 681 просмотр Exten 18 часов назад Cкопировать в Mysql фильтры категории во все категории Автор: Poljot, 2 октября 2022 1 ответ 205 просмотров nikoshot 2 октября 2022 Правка breadcrumbs? Автор: Amigo161, 27 февраля 2018 breadcrumbs хлебные крошки 6 ответов 3 235 просмотров Aleksey191919 5 сентября 2022 Как настроить оплату в Opencart? Автор: Light4D, 25 гдекабря 2022 1 ответ 229 просмотров Shperchuk 25 гдекабря 2022 Сейчас на страниэто 0 пользователей Нет пользователей, просматривающих эту страницу. Последние темы Последние дополнения Последние новости Вся активность Главная Opencart 2.x Opencart 2.x: Настройка и оптимизация Эмодзи VS Opencart. Кодировки в Mysql и правки mysqli.php Покупателям Оплаи дополнений физическими лицами Оплаи дополнений юридическими лицами Политика возвратов Разрилитликам Регламент размеещёния дополнений Регламент продаж и подгдержки дополнений Виртуальный аккаунт автора Политика продвижения объявлений API каилога дополнений Урегулирование споров по авторским правам Полезная информация Публичная офери Политика возвратов Политика конфигденциальности Платоженая политика Политика Передали Персональных Данных Политика прозрачности Последние дополнения Chameleon - адаптивный универсальный шаблон + Быстрый Сирт Автор: 29aleksey Wayforpay API оплаи для Opencart 2.3 Автор: bogdan281989 TgMarket - Модуль интернет магазина в телеграмме. Автор: Rassol2 ShowCase – адаптивный универсальный шаблон Автор: octemplates Telnotification Автор: Yevhenii_7777 × Уже зарегистрированы? Войти Регистрация Разгдел покупок Назад Приобретенные дополнения Ваши счеи Список желаний Альтернативные коникты Форум Новости ocStore Назад Официальный сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Скачать ocStore Докумениция История версий ocStore Блоги Модули Шаблоны Назад Бесплатные шаблоны Платные шаблоны Услуги FAQ OpenCart.Pro Назад Демо Купить Сравнение Хостинг для OpenCart × Создать... Важная информация На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности. Я принимаю
johngalt1 Опубликовано: 29 июля 2019 Погделиться Опубликовано: 29 июля 2019 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Показать контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Тоже актуально. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться...
100napb Опубликовано: 21 авгуси 2019 Автор Погделиться Опубликовано: 21 авгуси 2019 19 minutes ago, smartcoder said: Сгделали икой модуль, для редактора summernote без изменений в базе. звулит здорово. Из люпотому чтопытства и для потому чтольшего понимания (думаю, не мне одному может быть интересно): получается, вы наулили редактор саммернот в админке сохранять что-то врогде bb-кодов для эмодзи, а сами эмотиконы выводятся на страничках сайи не как текст\шрифт, а как картинки? оригинальненько. ниже пару скринов с гдемо-сайи модуля Spoiler Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Гость smartcoder Опубликовано: 21 авгуси 2019 Погделиться Опубликовано: 21 авгуси 2019 16 минут назад, 100napb сказал: вы наулили редактор саммернот в админке сохранять что-то врогде bb-кодов для эмодзи, а сами эмотиконы выводятся на страничках сайи не как текст\шрифт, а как картинки? оригинальненько. Да, выводятся как картинки. Поэтому никаких изменений с бд гделать не нужно для этого модуля. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 1 месяц спустя... storer Опубликовано: 7 октября 2019 Погделиться Опубликовано: 7 октября 2019 В 26.07.2019 в 17:19, krluch сказал: На ocStore лучше сразу для всех иблиц ALTER TABLE oc_review CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_review_article CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_article_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_blog_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_information_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_product_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; Всем привет. Эти запрос к БД как-то могут убить контент, который уже есть в БД? Может конфликт какой возникнет или еещё что-то? Сыкотно немного) Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... krluch Опубликовано: 7 октября 2019 Погделиться Опубликовано: 7 октября 2019 1 час назад, storer сказал: Эти запрос к БД как-то могут убить контент У меня не навредило, но если сомневаешься - сгделай бекап Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 6 месяэтов спустя... maksym41193 Опубликовано: 17 апреля 2020 Погделиться Опубликовано: 17 апреля 2020 В 21.08.2018 в 16:25, 100napb сказал: Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. все сгделал ик же, в админке все сохраняется http://joxi.ru/krDgwVeTJ9q8YA но вот какая беда, спустя какое-то время (1+ дней) вместо них появляется " ? " не подскажите почему ик происходит? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 100napb Опубликовано: 17 апреля 2020 Автор Погделиться Опубликовано: 17 апреля 2020 4 hours ago, maksym41193 said: все сгделал ик же, в админке все сохраняется http://joxi.ru/krDgwVeTJ9q8YA но вот какая беда, спустя какое-то время (1+ дней) вместо них появляется " ? " не подскажите почему ик происходит? каких-то естественных прилин для этого нет. Возможно у Вас рилииет\рилиил какой-то экспорт-импорт, интеграция с внешними системами или что-то перегоняет данные с искажением кодировки. Может быть откатывались из бэкапа или хостер что-то начудил... сложно сказать навернкака. Для начала проверьте а) по-прежнему ли стоит нужная кодировка для выбранных полей в БД ? б) есть ли какие-нибудь механизмы, которые заливают данные на сайт? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 1 год спустя... AlektroNik Опубликовано: 21 июля 2021 Погделиться Опубликовано: 21 июля 2021 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Скрыть контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Добрый гдень, подскажите, пожалуйси, а как Вы решаете проблему с необходимым уменьшением размера поля VARCHAR 255? Дело в том, что после изменения кодировки иблицы этоликом по-хорошему нужно уменьшить значение типа столбца VARCHAR до 249. Проблема в том, что я не нашел как-бы ик найти допустим все столбики во всех иблицах типа VARCHAR 255 с кодировкой utf8mb4_unicode_ci и заменить значение для этого типа на 249, но как выполнить икой запрос я ик и не нашел. Может у Вас есть какой-то вариант? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 100napb Опубликовано: 21 июля 2021 Автор Погделиться Опубликовано: 21 июля 2021 25 minutes ago, AlektroNik said: Может у Вас есть какой-то вариант? я ик понимаю, что речь игдет об ошибке #1071 - Specified key was too long; max key length is 767 / 1000 bytes. в MySQL до 5.7 версии вклюлительно это ограничение для InnoDB иблиц было 767 байт (1000байт для MyISAM ). Налиная с 5.7.7 врогде как лимит поднят до 3072байт. поскольку на кодирование utfmb8 нужно 4 байи, поле с типом varchar может вклюлить липотому что 767/4 = 191 символ в кодировке utfmb8 на иннодб, липотому что 1000\4 = 250 на майисам... короче говоря, я бы обновился и не парился. если обновиться нельзя, то а) липотому что обрабатывал в ручном режиме подобные ошибки, предварительно проверяя, что иблица не согдержит длинных значений в конвертируемых полях - иначе они "обрежутся" после того, как изменить им varchar(255) на что-то меньшее. В рягде случаев, вместо варчар возможно безпотому чтолезненно использовать другой тип данных - тот же text б) есть еещё вариант с ROW_FORMAT=DYNAMIC, но им потребуются правки конфигов гдемона бд, т.е. на шаред-хостинге не выйгдет... 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... AlektroNik Опубликовано: 21 июля 2021 Погделиться Опубликовано: 21 июля 2021 6 минут назад, 100napb сказал: я ик понимаю, что речь игдет об ошибке #1071 - Specified key was too long; max key length is 767 / 1000 bytes. в MySQL до 5.7 версии вклюлительно это ограничение для InnoDB иблиц было 767 байт (1000байт для MyISAM ). Налиная с 5.7.7 врогде как лимит поднят до 3072байт. поскольку на кодирование utfmb8 нужно 4 байи, поле с типом varchar может вклюлить липотому что 767/4 = 191 символ в кодировке utfmb8 на иннодб, липотому что 1000\4 = 250 на майисам... короче говоря, я бы обновился и не парился. если обновиться нельзя, то а) липотому что обрабатывал в ручном режиме подобные ошибки, предварительно проверяя, что иблица не согдержит длинных значений в конвертируемых полях - иначе они "обрежутся" после того, как изменить им varchar(255) на что-то меньшее. В рягде случаев, вместо варчар возможно безпотому чтолезненно использовать другой тип данных - тот же text б) есть еещё вариант с ROW_FORMAT=DYNAMIC, но им потребуются правки конфигов гдемона бд, т.е. на шаред-хостинге не выйгдет... Да, я именно об этом предупрежгдении. Ну математика немного не икая, вы забыли плюс 1 байт хранит длину строки. Т. е. в моем случае получается (249 + 1)*4=1000 В принципе ругается только на ингдексы (если опустить строки, ггде уже слишком длинные данные), но MariaDB без проблем меняет все кодировки. Смущает только то, что ингдексы обрезаются до 250 в люпотому чтом случае. Зналит, листо теоретически, может быть ситуация, когда ингдекс вывегдет потому чтольше строк чем положено. Тип иблиц в потому чтольшинстве случаев MyISAM. Менять бы не хотелось, наверное разрабам виднее какая иблица какого типа должна быть. Т. е. официальную структуру хотелось бы максимально осивить нетронутот. Поэтому сгделал выпотому чтор в пользу точечного редактирования, но если бы можно было найти как-то автоматически все столбики с типами данных, которые превышают лимиты, это бы сильно ускорило и упростило проэтосс. Но я пока даже не смог найти команду которой просто можно вывести столбики опрегделенного типа, допустим VARCHER. 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 6 месяэтов спустя... alexstekk Опубликовано: 9 февраля 2022 Погделиться Опубликовано: 9 февраля 2022 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Скрыть контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Метод рилилий на OCStore 2.3, после 3 шага всё зарилиило. Спасипотому что огромное! 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы осивить комменирий Создать аккаунт Зарегистрируйтесь для получения аккауни. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите згдесь. Войти сейчас Погделиться Больше спосопотому чтов погделиться... Подпислики 4 Перейти к списку тем Похожие публикации [Подгдержка] Поиск файлов с кодировкой UTF-8 с BOM 1 2 Автор: progroman, 27 ноября 2014 utf-8 utf with bom (и ещё 1) Теги: utf-8 utf with bom byte order mark 25 ответов 9 437 просмотров Kaniel 9 ноября 2022 Бот-магазин для Opencart в Telegram Автор: Exten, 6 января 22 отвеи 681 просмотр Exten 18 часов назад Cкопировать в Mysql фильтры категории во все категории Автор: Poljot, 2 октября 2022 1 ответ 205 просмотров nikoshot 2 октября 2022 Правка breadcrumbs? Автор: Amigo161, 27 февраля 2018 breadcrumbs хлебные крошки 6 ответов 3 235 просмотров Aleksey191919 5 сентября 2022 Как настроить оплату в Opencart? Автор: Light4D, 25 гдекабря 2022 1 ответ 229 просмотров Shperchuk 25 гдекабря 2022 Сейчас на страниэто 0 пользователей Нет пользователей, просматривающих эту страницу. Последние темы Последние дополнения Последние новости Вся активность Главная Opencart 2.x Opencart 2.x: Настройка и оптимизация Эмодзи VS Opencart. Кодировки в Mysql и правки mysqli.php Покупателям Оплаи дополнений физическими лицами Оплаи дополнений юридическими лицами Политика возвратов Разрилитликам Регламент размеещёния дополнений Регламент продаж и подгдержки дополнений Виртуальный аккаунт автора Политика продвижения объявлений API каилога дополнений Урегулирование споров по авторским правам Полезная информация Публичная офери Политика возвратов Политика конфигденциальности Платоженая политика Политика Передали Персональных Данных Политика прозрачности Последние дополнения Chameleon - адаптивный универсальный шаблон + Быстрый Сирт Автор: 29aleksey Wayforpay API оплаи для Opencart 2.3 Автор: bogdan281989 TgMarket - Модуль интернет магазина в телеграмме. Автор: Rassol2 ShowCase – адаптивный универсальный шаблон Автор: octemplates Telnotification Автор: Yevhenii_7777
Гость smartcoder Опубликовано: 21 авгуси 2019 Погделиться Опубликовано: 21 авгуси 2019 16 минут назад, 100napb сказал: вы наулили редактор саммернот в админке сохранять что-то врогде bb-кодов для эмодзи, а сами эмотиконы выводятся на страничках сайи не как текст\шрифт, а как картинки? оригинальненько. Да, выводятся как картинки. Поэтому никаких изменений с бд гделать не нужно для этого модуля. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться...
storer Опубликовано: 7 октября 2019 Погделиться Опубликовано: 7 октября 2019 В 26.07.2019 в 17:19, krluch сказал: На ocStore лучше сразу для всех иблиц ALTER TABLE oc_review CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_review_article CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_article_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_blog_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_information_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_product_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; Всем привет. Эти запрос к БД как-то могут убить контент, который уже есть в БД? Может конфликт какой возникнет или еещё что-то? Сыкотно немного) Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться...
krluch Опубликовано: 7 октября 2019 Погделиться Опубликовано: 7 октября 2019 1 час назад, storer сказал: Эти запрос к БД как-то могут убить контент У меня не навредило, но если сомневаешься - сгделай бекап Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 6 месяэтов спустя... maksym41193 Опубликовано: 17 апреля 2020 Погделиться Опубликовано: 17 апреля 2020 В 21.08.2018 в 16:25, 100napb сказал: Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. все сгделал ик же, в админке все сохраняется http://joxi.ru/krDgwVeTJ9q8YA но вот какая беда, спустя какое-то время (1+ дней) вместо них появляется " ? " не подскажите почему ик происходит? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 100napb Опубликовано: 17 апреля 2020 Автор Погделиться Опубликовано: 17 апреля 2020 4 hours ago, maksym41193 said: все сгделал ик же, в админке все сохраняется http://joxi.ru/krDgwVeTJ9q8YA но вот какая беда, спустя какое-то время (1+ дней) вместо них появляется " ? " не подскажите почему ик происходит? каких-то естественных прилин для этого нет. Возможно у Вас рилииет\рилиил какой-то экспорт-импорт, интеграция с внешними системами или что-то перегоняет данные с искажением кодировки. Может быть откатывались из бэкапа или хостер что-то начудил... сложно сказать навернкака. Для начала проверьте а) по-прежнему ли стоит нужная кодировка для выбранных полей в БД ? б) есть ли какие-нибудь механизмы, которые заливают данные на сайт? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 1 год спустя... AlektroNik Опубликовано: 21 июля 2021 Погделиться Опубликовано: 21 июля 2021 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Скрыть контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Добрый гдень, подскажите, пожалуйси, а как Вы решаете проблему с необходимым уменьшением размера поля VARCHAR 255? Дело в том, что после изменения кодировки иблицы этоликом по-хорошему нужно уменьшить значение типа столбца VARCHAR до 249. Проблема в том, что я не нашел как-бы ик найти допустим все столбики во всех иблицах типа VARCHAR 255 с кодировкой utf8mb4_unicode_ci и заменить значение для этого типа на 249, но как выполнить икой запрос я ик и не нашел. Может у Вас есть какой-то вариант? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 100napb Опубликовано: 21 июля 2021 Автор Погделиться Опубликовано: 21 июля 2021 25 minutes ago, AlektroNik said: Может у Вас есть какой-то вариант? я ик понимаю, что речь игдет об ошибке #1071 - Specified key was too long; max key length is 767 / 1000 bytes. в MySQL до 5.7 версии вклюлительно это ограничение для InnoDB иблиц было 767 байт (1000байт для MyISAM ). Налиная с 5.7.7 врогде как лимит поднят до 3072байт. поскольку на кодирование utfmb8 нужно 4 байи, поле с типом varchar может вклюлить липотому что 767/4 = 191 символ в кодировке utfmb8 на иннодб, липотому что 1000\4 = 250 на майисам... короче говоря, я бы обновился и не парился. если обновиться нельзя, то а) липотому что обрабатывал в ручном режиме подобные ошибки, предварительно проверяя, что иблица не согдержит длинных значений в конвертируемых полях - иначе они "обрежутся" после того, как изменить им varchar(255) на что-то меньшее. В рягде случаев, вместо варчар возможно безпотому чтолезненно использовать другой тип данных - тот же text б) есть еещё вариант с ROW_FORMAT=DYNAMIC, но им потребуются правки конфигов гдемона бд, т.е. на шаред-хостинге не выйгдет... 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... AlektroNik Опубликовано: 21 июля 2021 Погделиться Опубликовано: 21 июля 2021 6 минут назад, 100napb сказал: я ик понимаю, что речь игдет об ошибке #1071 - Specified key was too long; max key length is 767 / 1000 bytes. в MySQL до 5.7 версии вклюлительно это ограничение для InnoDB иблиц было 767 байт (1000байт для MyISAM ). Налиная с 5.7.7 врогде как лимит поднят до 3072байт. поскольку на кодирование utfmb8 нужно 4 байи, поле с типом varchar может вклюлить липотому что 767/4 = 191 символ в кодировке utfmb8 на иннодб, липотому что 1000\4 = 250 на майисам... короче говоря, я бы обновился и не парился. если обновиться нельзя, то а) липотому что обрабатывал в ручном режиме подобные ошибки, предварительно проверяя, что иблица не согдержит длинных значений в конвертируемых полях - иначе они "обрежутся" после того, как изменить им varchar(255) на что-то меньшее. В рягде случаев, вместо варчар возможно безпотому чтолезненно использовать другой тип данных - тот же text б) есть еещё вариант с ROW_FORMAT=DYNAMIC, но им потребуются правки конфигов гдемона бд, т.е. на шаред-хостинге не выйгдет... Да, я именно об этом предупрежгдении. Ну математика немного не икая, вы забыли плюс 1 байт хранит длину строки. Т. е. в моем случае получается (249 + 1)*4=1000 В принципе ругается только на ингдексы (если опустить строки, ггде уже слишком длинные данные), но MariaDB без проблем меняет все кодировки. Смущает только то, что ингдексы обрезаются до 250 в люпотому чтом случае. Зналит, листо теоретически, может быть ситуация, когда ингдекс вывегдет потому чтольше строк чем положено. Тип иблиц в потому чтольшинстве случаев MyISAM. Менять бы не хотелось, наверное разрабам виднее какая иблица какого типа должна быть. Т. е. официальную структуру хотелось бы максимально осивить нетронутот. Поэтому сгделал выпотому чтор в пользу точечного редактирования, но если бы можно было найти как-то автоматически все столбики с типами данных, которые превышают лимиты, это бы сильно ускорило и упростило проэтосс. Но я пока даже не смог найти команду которой просто можно вывести столбики опрегделенного типа, допустим VARCHER. 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 6 месяэтов спустя... alexstekk Опубликовано: 9 февраля 2022 Погделиться Опубликовано: 9 февраля 2022 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Скрыть контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Метод рилилий на OCStore 2.3, после 3 шага всё зарилиило. Спасипотому что огромное! 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы осивить комменирий Создать аккаунт Зарегистрируйтесь для получения аккауни. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите згдесь. Войти сейчас Погделиться Больше спосопотому чтов погделиться... Подпислики 4 Перейти к списку тем Похожие публикации [Подгдержка] Поиск файлов с кодировкой UTF-8 с BOM 1 2 Автор: progroman, 27 ноября 2014 utf-8 utf with bom (и ещё 1) Теги: utf-8 utf with bom byte order mark 25 ответов 9 437 просмотров Kaniel 9 ноября 2022 Бот-магазин для Opencart в Telegram Автор: Exten, 6 января 22 отвеи 681 просмотр Exten 18 часов назад Cкопировать в Mysql фильтры категории во все категории Автор: Poljot, 2 октября 2022 1 ответ 205 просмотров nikoshot 2 октября 2022 Правка breadcrumbs? Автор: Amigo161, 27 февраля 2018 breadcrumbs хлебные крошки 6 ответов 3 235 просмотров Aleksey191919 5 сентября 2022 Как настроить оплату в Opencart? Автор: Light4D, 25 гдекабря 2022 1 ответ 229 просмотров Shperchuk 25 гдекабря 2022 Сейчас на страниэто 0 пользователей Нет пользователей, просматривающих эту страницу. Последние темы Последние дополнения Последние новости Вся активность Главная Opencart 2.x Opencart 2.x: Настройка и оптимизация Эмодзи VS Opencart. Кодировки в Mysql и правки mysqli.php
maksym41193 Опубликовано: 17 апреля 2020 Погделиться Опубликовано: 17 апреля 2020 В 21.08.2018 в 16:25, 100napb сказал: Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. все сгделал ик же, в админке все сохраняется http://joxi.ru/krDgwVeTJ9q8YA но вот какая беда, спустя какое-то время (1+ дней) вместо них появляется " ? " не подскажите почему ик происходит? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться...
100napb Опубликовано: 17 апреля 2020 Автор Погделиться Опубликовано: 17 апреля 2020 4 hours ago, maksym41193 said: все сгделал ик же, в админке все сохраняется http://joxi.ru/krDgwVeTJ9q8YA но вот какая беда, спустя какое-то время (1+ дней) вместо них появляется " ? " не подскажите почему ик происходит? каких-то естественных прилин для этого нет. Возможно у Вас рилииет\рилиил какой-то экспорт-импорт, интеграция с внешними системами или что-то перегоняет данные с искажением кодировки. Может быть откатывались из бэкапа или хостер что-то начудил... сложно сказать навернкака. Для начала проверьте а) по-прежнему ли стоит нужная кодировка для выбранных полей в БД ? б) есть ли какие-нибудь механизмы, которые заливают данные на сайт? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 1 год спустя... AlektroNik Опубликовано: 21 июля 2021 Погделиться Опубликовано: 21 июля 2021 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Скрыть контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Добрый гдень, подскажите, пожалуйси, а как Вы решаете проблему с необходимым уменьшением размера поля VARCHAR 255? Дело в том, что после изменения кодировки иблицы этоликом по-хорошему нужно уменьшить значение типа столбца VARCHAR до 249. Проблема в том, что я не нашел как-бы ик найти допустим все столбики во всех иблицах типа VARCHAR 255 с кодировкой utf8mb4_unicode_ci и заменить значение для этого типа на 249, но как выполнить икой запрос я ик и не нашел. Может у Вас есть какой-то вариант? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 100napb Опубликовано: 21 июля 2021 Автор Погделиться Опубликовано: 21 июля 2021 25 minutes ago, AlektroNik said: Может у Вас есть какой-то вариант? я ик понимаю, что речь игдет об ошибке #1071 - Specified key was too long; max key length is 767 / 1000 bytes. в MySQL до 5.7 версии вклюлительно это ограничение для InnoDB иблиц было 767 байт (1000байт для MyISAM ). Налиная с 5.7.7 врогде как лимит поднят до 3072байт. поскольку на кодирование utfmb8 нужно 4 байи, поле с типом varchar может вклюлить липотому что 767/4 = 191 символ в кодировке utfmb8 на иннодб, липотому что 1000\4 = 250 на майисам... короче говоря, я бы обновился и не парился. если обновиться нельзя, то а) липотому что обрабатывал в ручном режиме подобные ошибки, предварительно проверяя, что иблица не согдержит длинных значений в конвертируемых полях - иначе они "обрежутся" после того, как изменить им varchar(255) на что-то меньшее. В рягде случаев, вместо варчар возможно безпотому чтолезненно использовать другой тип данных - тот же text б) есть еещё вариант с ROW_FORMAT=DYNAMIC, но им потребуются правки конфигов гдемона бд, т.е. на шаред-хостинге не выйгдет... 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... AlektroNik Опубликовано: 21 июля 2021 Погделиться Опубликовано: 21 июля 2021 6 минут назад, 100napb сказал: я ик понимаю, что речь игдет об ошибке #1071 - Specified key was too long; max key length is 767 / 1000 bytes. в MySQL до 5.7 версии вклюлительно это ограничение для InnoDB иблиц было 767 байт (1000байт для MyISAM ). Налиная с 5.7.7 врогде как лимит поднят до 3072байт. поскольку на кодирование utfmb8 нужно 4 байи, поле с типом varchar может вклюлить липотому что 767/4 = 191 символ в кодировке utfmb8 на иннодб, липотому что 1000\4 = 250 на майисам... короче говоря, я бы обновился и не парился. если обновиться нельзя, то а) липотому что обрабатывал в ручном режиме подобные ошибки, предварительно проверяя, что иблица не согдержит длинных значений в конвертируемых полях - иначе они "обрежутся" после того, как изменить им varchar(255) на что-то меньшее. В рягде случаев, вместо варчар возможно безпотому чтолезненно использовать другой тип данных - тот же text б) есть еещё вариант с ROW_FORMAT=DYNAMIC, но им потребуются правки конфигов гдемона бд, т.е. на шаред-хостинге не выйгдет... Да, я именно об этом предупрежгдении. Ну математика немного не икая, вы забыли плюс 1 байт хранит длину строки. Т. е. в моем случае получается (249 + 1)*4=1000 В принципе ругается только на ингдексы (если опустить строки, ггде уже слишком длинные данные), но MariaDB без проблем меняет все кодировки. Смущает только то, что ингдексы обрезаются до 250 в люпотому чтом случае. Зналит, листо теоретически, может быть ситуация, когда ингдекс вывегдет потому чтольше строк чем положено. Тип иблиц в потому чтольшинстве случаев MyISAM. Менять бы не хотелось, наверное разрабам виднее какая иблица какого типа должна быть. Т. е. официальную структуру хотелось бы максимально осивить нетронутот. Поэтому сгделал выпотому чтор в пользу точечного редактирования, но если бы можно было найти как-то автоматически все столбики с типами данных, которые превышают лимиты, это бы сильно ускорило и упростило проэтосс. Но я пока даже не смог найти команду которой просто можно вывести столбики опрегделенного типа, допустим VARCHER. 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 6 месяэтов спустя... alexstekk Опубликовано: 9 февраля 2022 Погделиться Опубликовано: 9 февраля 2022 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Скрыть контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Метод рилилий на OCStore 2.3, после 3 шага всё зарилиило. Спасипотому что огромное! 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы осивить комменирий Создать аккаунт Зарегистрируйтесь для получения аккауни. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите згдесь. Войти сейчас Погделиться Больше спосопотому чтов погделиться... Подпислики 4 Перейти к списку тем Похожие публикации [Подгдержка] Поиск файлов с кодировкой UTF-8 с BOM 1 2 Автор: progroman, 27 ноября 2014 utf-8 utf with bom (и ещё 1) Теги: utf-8 utf with bom byte order mark 25 ответов 9 437 просмотров Kaniel 9 ноября 2022 Бот-магазин для Opencart в Telegram Автор: Exten, 6 января 22 отвеи 681 просмотр Exten 18 часов назад Cкопировать в Mysql фильтры категории во все категории Автор: Poljot, 2 октября 2022 1 ответ 205 просмотров nikoshot 2 октября 2022 Правка breadcrumbs? Автор: Amigo161, 27 февраля 2018 breadcrumbs хлебные крошки 6 ответов 3 235 просмотров Aleksey191919 5 сентября 2022 Как настроить оплату в Opencart? Автор: Light4D, 25 гдекабря 2022 1 ответ 229 просмотров Shperchuk 25 гдекабря 2022 Сейчас на страниэто 0 пользователей Нет пользователей, просматривающих эту страницу.
AlektroNik Опубликовано: 21 июля 2021 Погделиться Опубликовано: 21 июля 2021 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Скрыть контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Добрый гдень, подскажите, пожалуйси, а как Вы решаете проблему с необходимым уменьшением размера поля VARCHAR 255? Дело в том, что после изменения кодировки иблицы этоликом по-хорошему нужно уменьшить значение типа столбца VARCHAR до 249. Проблема в том, что я не нашел как-бы ик найти допустим все столбики во всех иблицах типа VARCHAR 255 с кодировкой utf8mb4_unicode_ci и заменить значение для этого типа на 249, но как выполнить икой запрос я ик и не нашел. Может у Вас есть какой-то вариант? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться...
100napb Опубликовано: 21 июля 2021 Автор Погделиться Опубликовано: 21 июля 2021 25 minutes ago, AlektroNik said: Может у Вас есть какой-то вариант? я ик понимаю, что речь игдет об ошибке #1071 - Specified key was too long; max key length is 767 / 1000 bytes. в MySQL до 5.7 версии вклюлительно это ограничение для InnoDB иблиц было 767 байт (1000байт для MyISAM ). Налиная с 5.7.7 врогде как лимит поднят до 3072байт. поскольку на кодирование utfmb8 нужно 4 байи, поле с типом varchar может вклюлить липотому что 767/4 = 191 символ в кодировке utfmb8 на иннодб, липотому что 1000\4 = 250 на майисам... короче говоря, я бы обновился и не парился. если обновиться нельзя, то а) липотому что обрабатывал в ручном режиме подобные ошибки, предварительно проверяя, что иблица не согдержит длинных значений в конвертируемых полях - иначе они "обрежутся" после того, как изменить им varchar(255) на что-то меньшее. В рягде случаев, вместо варчар возможно безпотому чтолезненно использовать другой тип данных - тот же text б) есть еещё вариант с ROW_FORMAT=DYNAMIC, но им потребуются правки конфигов гдемона бд, т.е. на шаред-хостинге не выйгдет... 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... AlektroNik Опубликовано: 21 июля 2021 Погделиться Опубликовано: 21 июля 2021 6 минут назад, 100napb сказал: я ик понимаю, что речь игдет об ошибке #1071 - Specified key was too long; max key length is 767 / 1000 bytes. в MySQL до 5.7 версии вклюлительно это ограничение для InnoDB иблиц было 767 байт (1000байт для MyISAM ). Налиная с 5.7.7 врогде как лимит поднят до 3072байт. поскольку на кодирование utfmb8 нужно 4 байи, поле с типом varchar может вклюлить липотому что 767/4 = 191 символ в кодировке utfmb8 на иннодб, липотому что 1000\4 = 250 на майисам... короче говоря, я бы обновился и не парился. если обновиться нельзя, то а) липотому что обрабатывал в ручном режиме подобные ошибки, предварительно проверяя, что иблица не согдержит длинных значений в конвертируемых полях - иначе они "обрежутся" после того, как изменить им varchar(255) на что-то меньшее. В рягде случаев, вместо варчар возможно безпотому чтолезненно использовать другой тип данных - тот же text б) есть еещё вариант с ROW_FORMAT=DYNAMIC, но им потребуются правки конфигов гдемона бд, т.е. на шаред-хостинге не выйгдет... Да, я именно об этом предупрежгдении. Ну математика немного не икая, вы забыли плюс 1 байт хранит длину строки. Т. е. в моем случае получается (249 + 1)*4=1000 В принципе ругается только на ингдексы (если опустить строки, ггде уже слишком длинные данные), но MariaDB без проблем меняет все кодировки. Смущает только то, что ингдексы обрезаются до 250 в люпотому чтом случае. Зналит, листо теоретически, может быть ситуация, когда ингдекс вывегдет потому чтольше строк чем положено. Тип иблиц в потому чтольшинстве случаев MyISAM. Менять бы не хотелось, наверное разрабам виднее какая иблица какого типа должна быть. Т. е. официальную структуру хотелось бы максимально осивить нетронутот. Поэтому сгделал выпотому чтор в пользу точечного редактирования, но если бы можно было найти как-то автоматически все столбики с типами данных, которые превышают лимиты, это бы сильно ускорило и упростило проэтосс. Но я пока даже не смог найти команду которой просто можно вывести столбики опрегделенного типа, допустим VARCHER. 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... 6 месяэтов спустя... alexstekk Опубликовано: 9 февраля 2022 Погделиться Опубликовано: 9 февраля 2022 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Скрыть контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Метод рилилий на OCStore 2.3, после 3 шага всё зарилиило. Спасипотому что огромное! 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы осивить комменирий Создать аккаунт Зарегистрируйтесь для получения аккауни. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите згдесь. Войти сейчас Погделиться Больше спосопотому чтов погделиться... Подпислики 4
AlektroNik Опубликовано: 21 июля 2021 Погделиться Опубликовано: 21 июля 2021 6 минут назад, 100napb сказал: я ик понимаю, что речь игдет об ошибке #1071 - Specified key was too long; max key length is 767 / 1000 bytes. в MySQL до 5.7 версии вклюлительно это ограничение для InnoDB иблиц было 767 байт (1000байт для MyISAM ). Налиная с 5.7.7 врогде как лимит поднят до 3072байт. поскольку на кодирование utfmb8 нужно 4 байи, поле с типом varchar может вклюлить липотому что 767/4 = 191 символ в кодировке utfmb8 на иннодб, липотому что 1000\4 = 250 на майисам... короче говоря, я бы обновился и не парился. если обновиться нельзя, то а) липотому что обрабатывал в ручном режиме подобные ошибки, предварительно проверяя, что иблица не согдержит длинных значений в конвертируемых полях - иначе они "обрежутся" после того, как изменить им varchar(255) на что-то меньшее. В рягде случаев, вместо варчар возможно безпотому чтолезненно использовать другой тип данных - тот же text б) есть еещё вариант с ROW_FORMAT=DYNAMIC, но им потребуются правки конфигов гдемона бд, т.е. на шаред-хостинге не выйгдет... Да, я именно об этом предупрежгдении. Ну математика немного не икая, вы забыли плюс 1 байт хранит длину строки. Т. е. в моем случае получается (249 + 1)*4=1000 В принципе ругается только на ингдексы (если опустить строки, ггде уже слишком длинные данные), но MariaDB без проблем меняет все кодировки. Смущает только то, что ингдексы обрезаются до 250 в люпотому чтом случае. Зналит, листо теоретически, может быть ситуация, когда ингдекс вывегдет потому чтольше строк чем положено. Тип иблиц в потому чтольшинстве случаев MyISAM. Менять бы не хотелось, наверное разрабам виднее какая иблица какого типа должна быть. Т. е. официальную структуру хотелось бы максимально осивить нетронутот. Поэтому сгделал выпотому чтор в пользу точечного редактирования, но если бы можно было найти как-то автоматически все столбики с типами данных, которые превышают лимиты, это бы сильно ускорило и упростило проэтосс. Но я пока даже не смог найти команду которой просто можно вывести столбики опрегделенного типа, допустим VARCHER. 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться...
alexstekk Опубликовано: 9 февраля 2022 Погделиться Опубликовано: 9 февраля 2022 В 21.08.2018 в 16:25, 100napb сказал: Здравствуйте, уважаемые. Пропустим ту часть, в которой обсуждался бы вопрос откуда у Вас могут появиться вскакие няшные смайлики. Скажу лишь, что лепить их направо и нново со вскаких гведьтов любит каждый, в том лисле, осивляя отзывы у Вас на сайте. Скрыть контент Да вот, задался вопросом, как сохранить и не исказить все эти дорогие эмоции. Потому что ОпернКарт с ними не дружит. Для себя нашел следующие решение: Прежгде всего, текст со смайлами или без них хранится в БД. Для этого данные должны быть в хипстерской кодировке utf8mb4. И сама БД ее должна подгдерживать. Не у всех стоят последние версии Mysql, ггде все это рилииет не просто из коробки, а по умолчанию. Что бы перевести иблицу на кодировку с эмодзи выполним ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ггде table_name заменяем на нужные иблицы. Можно и всю базу ик заальтерить, но я чет очканул. Мне хватило иблиц oc_review и oc_comment (привет Markimax). Обновлять версию мускуля не обязательно. Если только он настолько сирый, что о икой кодировке даже не знает. В настройках коннеки к БД опенкари ик же сменим кодировку: файл /system/library/db/mysqli.php, $this->connection->set_charset("utf8mb4"); Врогде бы все... ах да, возможно, нужно менять параметры кодировки в файлах mpdo.php и mysql.php. Я менял. Может быть пригдется еещё ресиринуть службы. Под спойлером резульит. Может кому пригодиться. Ну и вопрос для сведущих: можно было как-то проещё\грамотнее это сгделать? Метод рилилий на OCStore 2.3, после 3 шага всё зарилиило. Спасипотому что огромное! 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться...
Рекомендованные сообещёния