Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Xml Cdata


Rafaaaaaaa

Pergunta

Galera to quebrando a cabeça e não acho a solução...

Uma parte do meu codigo deleta um elemento e recria ele, porem alguns dos nos precisam ser entre <![CDATA[ ]]>...

$doc = new DOMDocument;
    $doc->load('conteudo.xml');
    $pagina = $doc->documentElement;
    
                //Remove Antigo ,  Cria novo
    $pagina->removeChild($pagina->getElementsByTagName("home")->item(0));
    $elemento = $doc->createElement('home');
    //Remove Antigo ,  Cria novo
    //Cria Folhas
    
    //$elemento->appendChild($doc->createElement('texto1', '<![CDATA[ '.$_POST["html"].' ]]>'));
                $elemento->appendChild($doc->createElement('sub1', 'ola2'));
    $elemento->appendChild($doc->createElement('texto2', 'ola3'));
    $elemento->appendChild($doc->createElement('sub2', 'ola4'));
Gostaria que o arquivo ficasse
<?xml version="1.0" encoding="ISO-8859-1"?>

<pagina>


    <home>
        <texto1><![CDATA[ <p>aa <font size="3">aa </font>aaa</font>...</p> ]]></texto1>
        <sub1>sub1</sub1>
        <texto2>texto2éé</texto2>
        <sub2>sub2</sub2>
    </home>


</pagina>
o maximo que consigo é sem o <![CDATA[ ]]>, cheguei a conseguir criar com
$ct = $elemento->ownerDocument->createCDATASection($_POST["html"]);
                $elemento->appendChild($ct);

mais ele não se amarra a <texto1> de forma alguma, espero ter sido claro, ms ta dificil ate p. passar a duvida hehehe....

Editado por Jonathan Queiroz
Adicionar tag's (Jonathan)
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Galera consegui resolver, na verdade eu já tinha passado varias vezes pela resposta, como eu qria colocar um post q vinha de um editor de texto em javascript por algum motivo ele zerava o arquivo xml qndu criado... o codigo ficou

$doc = new DOMDocument;
    $doc->load('conteudo.xml');
    $pagina = $doc->documentElement;
    //Remove Antigo ,  Cria novo
    $pagina->removeChild($pagina->getElementsByTagName("home")->item(0));
    $elemento = $doc->createElement('home');
    //Remove Antigo ,  Cria novo
    //Cria Folhas

$texto1 = $doc->createElement('texto1');
$ct = $doc->createCDATASection("\n" . $_POST["html"] . "\n");
$texto1->appendChild($ct);
$elemento->appendChild($texto1);
    
    //$elemento->appendChild($doc->createElement('texto1', '<![CDATA[ '.$_POST["html"].' ]]>'));
    $elemento->appendChild($doc->createElement('sub1', 'ola2'));
    $elemento->appendChild($doc->createElement('texto2', 'ola3'));
    $elemento->appendChild($doc->createElement('sub2', 'ola4'));
    
    
    //Cria Folhas
    //Salva
    $pagina->appendChild($elemento);
    //Salva
    $doc->save('conteudo.xml');
    header('Content-Type: text/xml');
    $doc->saveXML();

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...