Пришла и моя очередь столкнуться с проблемой противостояния Windows и кодировки UTF-8.
Проблема известна многим, кто имел дело с модулем [module=node_import]. Суть в том, что файлы CSV, сохраняемые из Excel, имеют кодировку CP-1251 (Windows), а модуль работает с "кошерной" кодировкой UTF-8.
Собственно, совет о том, как грамотно обойти эту проблему, я нашел здесь.
Для тех, кто знает что такое patch "и с чем его едят", выкладываю файлик - решение проблемы (чуть измененный код с указанной выше страницы).
И еще - оформил issues на drupal.org. Гуру, посмотрите, все ли правильно - как-никак мой первый патч на "оргах": http://drupal.org/node/1004030
Вложение | Размер |
---|---|
node_import_cp1251.patch | 631 байт |
Комментарии
а может проще открыть его в каком-нить Notepad++ и сохранить "UTF-8 без BOM"?
Мне проще. Клиентам, которые будут работать с сайтом - нет.
хотел предложить аналогичный способ
проще
а ещё можно использовать нормальный инструмент, который сохраняет нормальный csv файл
OOO Calc
См. выше. Для этого нужно
1. Поставить клиенту OO
2. Объяснить, как с ним работать, и почему нужно открывать файл в OO, а не в привычном ему Excel
Теперь представьте, что эти пункты нужно проделать с клиентом, который боится лишний раз нажать "не ту кнопку".
Слишком простое решение. Если кодировка не utf8, то вы конвертируете строку из cp1251 в utf8. О существовании иных кодировок вы не подозреваете?
Как "quick & dirty" решение для своего сайта может быть и сгодится, но предлагать это в виде патча для модуля нельзя.
пользуюсь openoffice)
из личного опыта: не сказав никому, переставил всему своему офису вместо MS Office 2003 -> OO.org многие даже не заметили подмены! просто весь день спрашивали: "а что это за окошечко белое выскакивает с надписью OpenOffice.org, когда ворд и эксель загружаю??" ^)^
хотя у меня, уж поверьте, такие боязливые юзвери, что аж противно ;))
вот, вот! примерно такая же фигня была
Ключевое слово - СВОЕМУ офису. Как часто вы делаете сайты исключительно для своей компании?
тоже верно.. просто хочется, что бы таких проблем никогда не возникало.. и всё из-за софта у конечного пользователя - мне как минимум обидно было бы за проект
импорт - это операция не для секретарш
но, думаю, даже секретарша способна понять, что картинки из фотошопа для сайта надо не в PSD сохранять
Anton L. Safin
чёт у меня ничего не получается, мб нужно после загрузки файла на сервер его конвертировать?..
хочется чтобы в превью сразу появлялись русские поля на 3 шаге. и мб знаете как задать собственные символы-разделители по умолчанию? спс
Нет, конвертировать ничего не нужно - все должно работать. Посмотрите, правильно ли выставляете формат при сохранении в Excel.
По поводу символов-разделителей по умолчанию не экспериментировал, но может быть вам как-то поможет этот модуль: [module=ni_cron]