ilippe 0 Denunciar post Postado Janeiro 5, 2011 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