Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

ilippe

[Resolvido] Erro no CDATA DOM

Recommended Posts

Olá pessoal

 

Criei essa função para criar um CDATA em um arquivo XML através do DOM PHP:

 

function create_CDATA($XML, $LINE, $CDATA) {
$xmlDoc = new DOMDocument();    
$xmlDoc->preserveWhiteSpace = true;              
$xmlDoc->load($XML);          
   $xpath = new DOMXpath($xmlDoc); 	
 $nodeList = $xpath->query($LINE);  
foreach($nodeList as $e_cdata) {   
$cdata = $xmlDoc->createCDATAsection($CDATA);
$cdata = $e_cdata->appendChild($cdata);
}      
 $xmlDoc->save($XML);

create_CDATA('arquivo.xml', 'item', 'olá, como vai você?';
}

 

 

 

Até aqui belezinha.

Mas tem um problema.

 

Se envio pro CDATA algo como:

create_CDATA('arquivo.xml', 'item', '<div class="imasters">Imasters</div>';

 

Ele escreve assim no CDATA:

<div class=\"imasters\">Imasters</div>

 

COM esse traço "\" sempre antes das aspas (").

 

O que devo fazer para corrigir isso?

 

 

 

"Assim evita que para dados postados via form o PHP automaticamente adicione caracter de escape em barras e aspas."

 

Mas coloquei só iss

$CDATA= stripslashes($CDATA);

 

E deu certinhu.

 

Gentem! Já foi... Acontece q o meu PHP provavelmente esta com o magic quotes habilitado (apesar de eu não saber o que é isso)

 

 

Achei num forum q eu deveria por isso no inicio do código:

 

ini_set("magic_quotes_gpc",0);
ini_set("magic_quotes_runtime",0);

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.