Janelee 0 Denunciar post Postado Fevereiro 9, 2009 Olá a todos. Estou tendo um pequeno problema pra gerar um xml atraves de um php, que busca as informações do meu banco de dados. Escrevi o código e para testar pedi para ele me retornar o resultado da busca, mas nem isso ele faz. Alguém sabe o que pode estar ocorrendo. Segue o código: <? include "config.php"; // Inclui o script de conexão. $query = mysql_query("SELECT * FROM blogpostagens as a INNER JOIN blogclientes as b WHERE a.cliente_id = b.idcliente ORDER BY a.cliente_id DESC LIMIT 2"); $sql = mysql_fetch_array($query); //teste na consulta echo "passou a consulta </br>"; echo "Uma id é ".$sql['id']; //fim do teste 1 $xml = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?> <!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">"; $xml.= "<indice>"; do { $xml.= "<clientes idcliente=\".$sql[id]."\" imagem=\" .$sql[imagem]."\" />" } while($sql = mysql_fetch_array($query)); $xml.="</indice>"; $arquivo_xml = fopen("indice.xml","w+"); fwrite($arquivo_xml,$xml); fclose($arquivo_xml); echo "$xml"; //teste final ?> thanks a todos desde já Compartilhar este post Link para o post Compartilhar em outros sites
Renato Siroma 2 Denunciar post Postado Fevereiro 9, 2009 $xml.= "<clientes idcliente=\".$sql[id]."\" imagem=\" .$sql[imagem]."\" />" O seu XML está dentro de Tags de XML.. isto é correto mas o Browser não vai lhe mostrar nada pois não reconheçe a tag <clientes> Abra o Arquivo Xml e veja se tem algo dentro, caso não tiver o problema é na query. Compartilhar este post Link para o post Compartilhar em outros sites
Renato Siroma 2 Denunciar post Postado Fevereiro 9, 2009 SELECT * FROM blogpostagens as a INNER JOIN blogclientes as b WHERE a.cliente_id = b.idcliente ORDER BY a.cliente_id DESC LIMIT 2 Creio que sua WHERE está errada já testou no MySQl comand Line? Compartilhar este post Link para o post Compartilhar em outros sites
Janelee 0 Denunciar post Postado Fevereiro 9, 2009 SELECT * FROM blogpostagens as a INNER JOIN blogclientes as b WHERE a.cliente_id = b.idcliente ORDER BY a.cliente_id DESC LIMIT 2 Creio que sua WHERE está errada já testou no MySQl comand Line? quando eu testei no phpmyadmin ele me retornou certinho os valores que eu procurava o.O e arquivo xml nao possui nada dentro. está vazio. Compartilhar este post Link para o post Compartilhar em outros sites
Janelee 0 Denunciar post Postado Fevereiro 10, 2009 Resolvi esse meu probelam através de um outro tópico do imasters http://imasters.com.br/artigo/1574/xml...sulta_ao_mysql/ basicamente, ele tem que gerar 3 campos que eu utilizarei no flash. titulo, conteudo e imagem. mas sempre da erro ao gerar o conteudo. ?? Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Fevereiro 10, 2009 Qual erro ? Poste o teu código atual... ficou muito vago. você resolveu ou não ? Compartilhar este post Link para o post Compartilhar em outros sites
Janelee 0 Denunciar post Postado Fevereiro 10, 2009 Qual erro ? Poste o teu código atual... ficou muito vago. você resolveu ou não ? Código atual... adaptado de uma matéria do imasters <? include "config.php"; //SQL $sql = @mysql_query(" SELECT * FROM blogpostagens AS a INNER JOIN blogclientes AS b WHERE a.cliente_id = b.idcliente ORDER BY a.id DESC LIMIT 0,2") or die("ERRO NO SQL"); //TOTAL DE LINHAS AFETADAS PELA CONSULTA $row = mysql_num_rows($sql); //VERIFICA SE A PESQUISA RETORNOU ALGUMA LINHA if($row > 0) { //ARQUIVO $arquivo = "indice.xml"; //ABRE O ARQUIVO(SE NÃO EXISTIR, CRIA) $ponteiro = fopen($arquivo, "w"); //ESCREVE NO ARQUIVO XML fwrite($ponteiro, "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\r\n"); fwrite($ponteiro, "<indice>\r\n"); for($i=0; $i<$row; $i++) { //PEGA OS DADOS DO SQL $titulo = mysql_result($sql,$i,"a.titulo"); $text = mysql_result($sql,$i,"a.conteudo"); // seu retirar essa linha o xml gera normalmente $img= mysql_result($sql,$i,"b.imagem"); //MONTA AS TAGS DO XML $conteudo = "<noticia>\r\n"; $conteudo .= "<tit>$titulo</tit>\r\n"; $conteudo .= "<txt>".strip_tags(substr($text,0,200))."...</txt>\r\n"; // seu retirar essa linha o xml gera normalmente $conteudo .= "<image>$img</image>\r\n"; $conteudo .= "</noticia>\r\n"; //ESCREVE NO ARQUIVO fwrite($ponteiro, $conteudo); }//FECHA FOR //FECHA A TAG AGENDA fwrite($ponteiro, "</indice>"); //FECHA O ARQUIVO fclose($ponteiro); //MENSAGEM echo "<h2>iMasters - Coluna PHP - Artigo 83</h2><br>"; echo "O arquivo <b>".$arquivo."</b> foi gerado com SUCESSO !"; }//FECHA IF($row) ?> este é o erro! Erro no processamento de XML: entidade não definida Posição: http://www.tridez.com.br/blog/indice.xml Número da linha 10, coluna 66:<txt>Musicais famosos de TV e festas da garotada inspiraram o catálogo ...</txt> -----------------------------------------------------------------^ Compartilhar este post Link para o post Compartilhar em outros sites
Marcio Leandro 0 Denunciar post Postado Fevereiro 10, 2009 O erro é o que a mensagem tá dizendo: entidade não definida. Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Fevereiro 10, 2009 Troca por: $conteudo .= '<txt>'.strip_tags(substr($text,0,200)).'</txt>'; // seu retirar essa linha o xml gera normalmenteExiste a coluna chamada "conteudo" ?Usa um mysql_fetch_assoc, é bem mais simples. Compartilhar este post Link para o post Compartilhar em outros sites
Janelee 0 Denunciar post Postado Fevereiro 10, 2009 TABELA REFERIDA blogpostagens (referida tabela a)` ( `id` int(15) NOT NULL auto_increment, `titulo` varchar(200) collate utf8_unicode_ci NOT NULL default '', `conteudo` text collate utf8_unicode_ci NOT NULL, `data` date NOT NULL default '0000-00-00', `autor` varchar(50) collate utf8_unicode_ci NOT NULL default '', `categorias` varchar(100) collate utf8_unicode_ci NOT NULL default '', `media` varchar(10) collate utf8_unicode_ci NOT NULL default '', `cliente_id` int(11) NOT NULL default '0', mudando aquela linha da o mesmo erro, só muda a linha. Erro no processamento de XML: entidade não definida Posição: http://www.tridez.com.br/blog/indice.xml Número da linha 9, coluna 66: Compartilhar este post Link para o post Compartilhar em outros sites
Janelee 0 Denunciar post Postado Fevereiro 10, 2009 Se eu faço o teste para gerar no IE, ele me retorna o seguinte erro: A página XML não pode ser exibida Não é possível exibir a entrada XML usando a folha de estilos XSL. Corrija o erro e clique no botão Atualizar ou tente novamente mais tarde. -------------------------------------------------------------------------------- Referência à entidade 'aacute' não definida. Erro ao processar o recurso 'http://www.tridez.com.br/blog/indice.xml'. Linha... <tit></tit><txt>Musicais famosos de TV e festas da garotada inspiraram o catálogo &l... Compartilhar este post Link para o post Compartilhar em outros sites
hufersil 145 Denunciar post Postado Fevereiro 10, 2009 campos longos dentro de uma tag xml mecerem uma CDATA ;) <xml><![CDATA[Aqui vai um longo texto <b> com tags</b> e vai de boa]]></xml> @braços Compartilhar este post Link para o post Compartilhar em outros sites
Janelee 0 Denunciar post Postado Fevereiro 10, 2009 campos longos dentro de uma tag xml mecerem uma CDATA ;) <xml><![CDATA[Aqui vai um longo texto <b> com tags</b> e vai de boa]]></xml> @braços GEROU o/ Muito Obrigada!!!!!!! :D Compartilhar este post Link para o post Compartilhar em outros sites