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

fil79

php+xml

3 mensagens neste tópico

Boas

tenho um  script para gerar um Xml através de uma busca ao mysql,

o script funciona mas grava o texto com os acentos em forma de quadrado

os dados vêem correctamente formatados do mysql portanto o problema ocorre no fwrite..

desde já agradeço!


//Vai actualizar o XML 

$sql = "SELECT menu.menu, conteudos.conteudos
FROM conteudos
INNER JOIN menu ON menu.idmenu = conteudos.idmenu
ORDER BY menu.ordem ASC";

$resultado = $db->db_query($sql); 
$rows = mysql_fetch_assoc($resultado); 


// gravando o documento XML e encapsulando o resultado na variável $xml
$xml = "<?xml version='1.0' encoding='iso-8859-1'?> \n\n";
// abrindo o nó principal
$xml .= "<infoi>\n";
$xml .= " <menu>\n";
// abrindo o while com os dados das fotos, isso delimita cada bloco de informações de fotos com seus respectivos dados(subnós) dentro deste nó


do {
$titulo = $rows['menu']; 
$content = $rows['conteudos'];
// subnós de informações - nome da foto, thumbnail da foto, título de apresentação da foto
$xml .=" <item>\n";
$xml .=" <titulo>$titulo</titulo>\n";
$xml .=" <conteudo>$content\n";
$xml .=" </conteudo>\n";
$xml .=" </item>\n";


// fechando o while dos dados
} while ($rows = mysql_fetch_assoc($resultado));
// fechando o nó principal
$xml .="</menu>\n";
$xml .="</info>\n";

//echo $xml;
//exit; 

$fp = @fopen('conteudos.xml','w');
$write = fwrite($fp,$xml);
fclose($fp);

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não tenho a certeza se interfere na codificação dos caracteres, mas experimenta abrir o ficheiro com o modo wb.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

problema resolvido!!

faltava dar-lhe o tipo de codificação:

fwrite($fp,utf8_encode($xml));

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