in Профессиональное

Cистемная ошибка: -1072896658 (system error: -1072896658)

Отладка javascript-ов в IE обычно вызывает в сознании массу непечатных слов в адрес его разработчиков. Эта заметка посвящается тем, кто сталкивался с невразумительной ошибкой, выдаваемой Internet Explorer-ом при использовании Ajax с php-библиотекой xajax:

Ошибка: системная ошибка: -1072896658 или Error: system error: -1072896658
 
Ошибка возникает из-за того, что в ответе серверверного скрипта в заголовках HTTP указана кодировка, которую Internet Explorer не может распознать. Например, cp1251 (вместо windows-1251), или utf8 (вместо UTF-8). Названия кодировок должны быть в соответствии со стандартами IE, а не так, как можно было бы предположить. Посмотреть список поддерживаемых кодировок можно на msdn: Character Set Recognition.

 

Устранить проблему можно следующими способами:

  • перед созданием объекта xajax задать константу XAJAX_DEFAULT_CHAR_ENCODING с кодировкой, которая будет выдаваться по умолчанию во всех заголовках, выдаваемых через xajaxResponse:

define (’XAJAX_DEFAULT_CHAR_ENCODING’, ‘windows-1251′);

  • задать кодировку в самом объекте xajaxResponse перед его возвращением:

$responseObject->setCharacterEncoding(’windows-1251′);

  • выдавать явно кодировку в http-заголовках ответа:

header(’Content-Type: text/html; charset=windows-1251′);

 

От себя добавлю что встречался с этой ошибкой когда хотел познакомиться с jQuery и в .htaccess имел неверно прописанную с точки зрения IE кодировку (UTF8 вместо UTF-8).

Взято здесь (надеюсь Алекс не против :))
 

Write a Comment

Comment

*