Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
iconv список кодировок
|
|||
|---|---|---|---|
|
#18+
Всем привет. Не могу разобраться в таком вопросе: есть сервер на котором лежит сайт, есть этот же сайт локально (синхронизирован через github). По крону на ресурсе происходит чтение почты и запись новых сообщений в базу. Так вот, в базе всё разумеется должно быть в единной кодировке, а потому письма, кодировка которых отлична от utf-8 переводятся в неё через iconv. Локально всё нормально, а на сервере вчера словили ошибку серверPHP Error[8]: iconv(): Detected an illegal character in input string При этом она на сервере выскакивала на каждом вызове (то есть не просто случайный сбой, а именно зависание на каком-то письме). А локально проводил чтение 3 раза и всё норм :) Потом перегрузил свою локальную базу на сервер и чтение продолжилось как и должно (то есть это "неправильное" письмо было пройдено и чтение пошло в штатном режиме). Потому вопрос, могут ли установленные в системе локали или что-то ещё влиять на работу данной функции (ну и утилиты iconv в целом)? И если могут, то что именно может вызвать данную ошибку? Заранее спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2013, 11:48 |
|
||
|
iconv список кодировок
|
|||
|---|---|---|---|
|
#18+
ПрограмёрПотому вопрос, могут ли установленные в системе локали или что-то ещё влиять на работу данной функции (ну и утилиты iconv в целом)?Могут и влияют, но, думаю, не в данном случае. Програмёрчто именно может вызвать данную ошибку?Ругается на серверillegal characterУточните, что это за символ, откуда он берется... А после уж видно будет, что с ним делать. В принципе, никто ж не запрещает пихать в письмо всякую непотребную абракадабру. Как вариант, неправильно определена кодировка исходного текста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2013, 12:52 |
|
||
|
iconv список кодировок
|
|||
|---|---|---|---|
|
#18+
vkleПрограмёрПотому вопрос, могут ли установленные в системе локали или что-то ещё влиять на работу данной функции (ну и утилиты iconv в целом)?Могут и влияют, но, думаю, не в данном случае. Програмёрчто именно может вызвать данную ошибку?Ругается на серверillegal characterУточните, что это за символ, откуда он берется... А после уж видно будет, что с ним делать. В принципе, никто ж не запрещает пихать в письмо всякую непотребную абракадабру. Как вариант, неправильно определена кодировка исходного текста. Спасибо, прислушался к совету и проверил в каком месте идёт такой косяк... В письме присутсвует некоторая конфиденциальная инфа, потому всё письмо целиком показать не могу :) Но суть такая: письмо состоит из двух частей... первая имеет mime тип: Content-Type: text/plain; charset=euc-kr Content-Transfer-Encoding: base64 вторая: Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 Если переводить каждую из этих частей например онлайн декодером, то периодически встречаются непереводимые символы (вместо них показывает знак вопроса в ромбике). Эти символы не имеют никакой закономерности, некоторые находятся в середине слова, другие - в начале. Но при этом в обязательном порядке после каждого такого символа появляется перенос строки, которого по тексту реально нету (с типами переносов никак не связано, так как текст в base64, а там соответственно символы 0x0A и 0x0D никак не используются). Считаю, что что-то подобное происходит и у нас на сервере... В это же время онлайн интерфейс яндекса всё показывает как надо (то есть каждый символ был переведён нормально), и мой локальный сервер тоже справился с задачей. Может встречались с подобным? Или хотя бы расскажите предположения, что может быть... никак не пойму в чём дело... С кодом это тоже никак не связано, ведь тогда, если бы это был мой косяк, то у меня не работало бы тоже (да и не думаю, что в топовом в гугле декодере допустили бы такую же ошибку). Какая либо разница в заимодействии почты и сервера тоже исключена, ведь скопированные именно с моей консоли данные перевелись в декодере с ошибкой. Остаётся видимо только iconv... Но что там может отличаться, ведь я в её у себя не трогал (думаю на основном сервере её тоже не трогали)... То есть и тут и там она установлена с настройками по-умолчанию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2013, 14:53 |
|
||
|
|

start [/forum/topic.php?fid=23&gotonew=1&tid=1463439]: |
0ms |
get settings: |
10ms |
get forum list: |
21ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
70ms |
get topic data: |
12ms |
get first new msg: |
7ms |
get forum data: |
3ms |
get page messages: |
40ms |
get tp. blocked users: |
2ms |
| others: | 261ms |
| total: | 434ms |

| 0 / 0 |
