• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

cereal_killa

Abrir xml com cdata

1 mensagem neste tópico

Boas,

Estou com um problema em ler um ficheiro xml com conteudo cdata, ja tentei de varias maneiras e até agora nada.

O codigo do xml é o seguinte :

<?xml version="1.0" encoding="iso-8859-1"?>
<root>
<item>
  <title><![CDATA[<font size='22' color='#338FF3'>Ferro Wink</font><br><font size='14' color='#ffffff'>lfsdjbnvsjdfxcngofsjdgnodf</font>]]></title>
  <content><![CDATA[ <img src='imgs/mats/43.jpg' vspace='-15' hspace='-2' height='235' width='550' > ]]></content>
</item>
<item>
<title><![CDATA[<font size='22' color='#338FF3'>Aço</font><br><font size='14' color='#ffffff'>lfsdjbnvsjdfxcnodfjgndofgn</font>]]></title>
  <content><![CDATA[ <img src='imgs/mats/1.jpg' vspace='-15' hspace='-2' height='235' width='550' > ]]></content>
</item>
<item>
<title><![CDATA[<font size='22' color='#338FF3'>Madeira</font><br><font size='14' color='#ffffff'>lfssjdvsjdfxcnnodfjgndofgn</font>]]></title>
  <content><![CDATA[ <img src='imgs/mats/3.jpg' vspace='-15' hspace='-2' height='235' width='550' > ]]></content>
</item>
<item>
<title><![CDATA[<font size='22' color='#338FF3'>Materiais</font><br><font size='14' color='#ffffff'>ljsdjofsjdgnodfjgndofgn</font>]]></title>
  <content><![CDATA[ <img src='imgs/mats/4.jpg' vspace='-15' hspace='-2' height='235' width='550' > ]]></content>
</item>
<item>
<title><![CDATA[<font size='22' color='#338FF3'>Procura</font><br><font size='14' color='#ffffff'>yb5yuyr65xcnggofdfjgndofgn</font>]]></title>
  <content><![CDATA[ <img src='imgs/mats/1.jpg' vspace='-15' hspace='-2' height='235' width='550' >]]></content>
</item>
</root>

O codigo do meu php neste momento :

<?php

class SimpleXMLExtended extends SimpleXMLElement

{

  public function addCData($cdata_text)

  {

    $node= dom_import_simplexml($this);

    $no = $node->ownerDocument;

    $node->appendChild($no->createCDATASection($cdata_text));

  }

}

$xml = new SimpleXMLExtended('../xml/mats.xml');

$mynode = $xml->addChild("myname");

$mynode->addCData("my name contains everything I want &%<>");

$xml->asXml('../xml/mats1.xml');

?>

E o erro que me da :/

Warning: SimpleXMLElement::__construct() [simplexmlelement.--construct]: Entity: line 1: parser error : Start tag expected, '<' not found in C:\Programas\wamp\www\php\addmat.php on line 13

Warning: SimpleXMLElement::__construct() [simplexmlelement.--construct]: ../xml/mats.xml in C:\Programas\wamp\www\php\addmat.php on line 13

Warning: SimpleXMLElement::__construct() [simplexmlelement.--construct]: ^ in C:\Programas\wamp\www\php\addmat.php on line 13

Fatal error: Uncaught exception 'Exception' with message 'String could not be parsed as XML' in C:\Programas\wamp\www\php\addmat.php:13 Stack trace: #0 C:\Programas\wamp\www\php\addmat.php(13): SimpleXMLElement->__construct('../xml/mats.xml') #1 {main} thrown in C:\Programas\wamp\www\php\addmat.php on line 13

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora