Генерировать XML из базы на лету и тут же обрабатывать Sablotronom

TheAviator

Новичок
Генерировать XML из базы на лету и тут же обрабатывать Sablotronom

Приветствую.
Проверил следующий вариант:
1) Файл data.php выгребает из базы данные и пишет в выходной поток XML. Ну и хедер проставлен text/xml у него. Собсно запускаю его из ИЕ и выводит дерево как и положено.
2) Файл transform.xsl содержит в себе преобразование.
3) Файл show.php работает используя саблотрон таким вот образом:
$result = xslt_process($xh, 'data.php', 'transform.xsl');

))) Задумка ясна, думаю:)
Только не пашет.

Есть ли какой-нить красивый вариант, позволяющий сделать то что я хочу, подскажите.
Пока что самое усное, что мне в голову пришло, это создавать временный xml файл при помоши fputs, но думаю, что есть решение более изящное.
 

chameleon

Новичок
1. RTFM по DOM-функциям (начни с [m]domxml_new_doc[/m], например).
2. какой нафик временный файл? если не хочется data.php переделывать то:
PHP:
ob_start();
include_once('data.php');
$xml=ob_get_contents();
ob_end_clean();
3. А может на клиента трансформацию отдать:
PHP:
<?xml-stylesheet type="text/xsl" href="transform.xsl"?>
 

TheAviator

Новичок
Автор оригинала: chameleon
3. А может на клиента трансформацию отдать:
PHP:
<?xml-stylesheet type="text/xsl" href="transform.xsl"?>
- На клиенте только под ИЕ работает, а я хочу чтоб под оперой и мозилой тоже перло))

Твой код проверю, правда с ДОМ - функциями разбираться весьма неохота, не для средних умов они писаны)))
 

dvp

Новичок
Автор оригинала: chameleon
из вышеупомянутого XSLT не умеет только Опера.
А мозилла имеет некоторые косяки с отображением, когда документ исходит из xml+xsl. В частности самый частый глюк - это то, что часто в поля ввода (input, textarea) нельзя ничего написать. Они как read-only, но в них вставляется из буфера.
 

chameleon

Новичок
что часто в поля ввода (input, textarea) нельзя ничего написать
вот такой форум работает у меня в FF1.0.1 без всяких "косяков". Я бы даже склонился к тому, что Gecko все же корректнее в этом отношении:
IE serializes and parses the output to generate what it actually renders. Mozilla in contrast renders exactly the result of your transformation.
и дайте ссылочку на bugreport, если не трудно.
 
Сверху