MSIE и AJAX

dima-u

Новичок
MSIE и AJAX

Проблема заключается в следующем, надо получить посредством XMLHttprequest следующие данные:

<content id="1">
[тут идет html контент, который будет далее вставлен в соответствующий слой страницы]
</content>

Соответственно чтобы парсеры не ругались на символы <>"' есть следующие строки:
PHP:
	$content=str_replace("&","&amp;",$content);
	$content=str_replace("<","&lt;",$content);
	$content=str_replace(">","&gt;",$content);
	$content=str_replace("\"","&quot;",$content);
В итоге получается:
PHP:
header("Content-type: text/xml;charset=WINDOWS-1251");
$content='<div id="asdasd"> ...... ';
	$content=tstr_replace("&","&amp;",$content);
	$content=str_replace("<","&lt;",$content);
	$content=str_replace(">","&gt;",$content);
	$content=str_replace("\"","&quot;",$content);
echo '<content id="1">'.$content.'</content>';
Operа и Mozilla все замечательно обрабатывают а MSIE не может обработать полученный XML.
Не знаю куда крутить.
 

Wicked

Новичок
clevel
а если в тексте попадется ]]> ? :)

dima-u
Вообще, наиболее правильным решением будет создавать XML соотвтетсвующими средствами типа DOM, xml writer, simplexml и т.д.
Цитируя моего друга:
ну а если ты руками генерируешь XML как текст, то у тебя всегда будут инъекции и прочее г#вно :)
 

dima-u

Новичок
Автор оригинала: Wicked
clevel
а если в тексте попадется ]]> ? :)

dima-u
Вообще, наиболее правильным решением будет создавать XML соотвтетсвующими средствами типа DOM, xml writer, simplexml и т.д.
Цитируя моего друга:
Спасибо, буду пробовать!
 

Alexandre

PHPПенсионер
Вообще, наиболее правильным решением будет создавать XML соотвтетсвующими средствами....
Спасибо, буду пробовать!
Не буду - а надо!!
AJAX как (от англ. Asynchronous JavaScript and XML — «асинхронный JavaScript и XML») — это подход к построению интерактивных пользовательских интерфейсов веб-приложений. При использовании AJAX веб-страница не перезагружается полностью в ответ на каждое действие пользователя. Вместо этого с веб-сервера догружаются только нужные пользователю данные через XML
 

dima-u

Новичок
Реализовал создание документа при помощи DOM.

Все бы ок, но когда появляются русские буквы - опять - IE отказываться обрабатвать документ,
header("Content-type: text/xml;charset=WINDOWS-1251");
или
header("Content-type: text/xml;charset=UTF-8");

не помогает, опять же, в Opera и Firefox все работает.


Понял, надо вставить:
<?xml version="1.0" encoding="windows-1251"?>

но как это задать в $doc = new DOMDocument('1.0') ?

буду проверять:
$dom = new DOMDocument('1.0', 'windows-1251');
 
Сверху