msantos 0 Denunciar post Postado Novembro 21, 2004 Fala ae pessoal, tudo beleza? Eu estou tentando fazer um sistema de consulta de endereço pelo CEP para usar no meu site usando aquele XML que o site dos Correios retorna através do link "http://www.correios.com.br/servicos/cep/xml_logradouro.cfm?pag=1&cep=XXXXXXXX"! Como ainda estou apredendo algumas de PHP pelo livro "Beginning PHP4 Programando" incluindo manipular XML, eu estou usando SAX para poder manipular os arquivos XMLs que tenho para analisar! Todos os arquivos que residem na minha máquina e possui a terminação *.xml que analisei, obtive sucesso em todas as operações! Por exemplo: $caminhoarquivo = "./cep.xml"; if( !( $arquivo = fopen( $caminhoarquivo, "r" ) ) ) die( "Não foi possível abrir o aqruivo xml!" ); // Resto da manipulação do XMLAgora quando analiso a URL não obtenho na análise do XML! Por exemplo: $cep = $_GET[ "cep" ]; $caminhoarquivo = "http://www.correios.com.br/servicos/cep/xml_logradouro.cfm?pag=1&cep=" . $cep; if( !( $arquivo = fopen( $caminhoarquivo ,"r" ) ) ) die( "Não foi possível abrir o aqruivo xml!" );Além disso tentei usar o método file_get_contents( $caminhoarquivo ) para retorna o XML em uma string e tentar utilizar DOMXML para manipular o XML, mas também não consegui porque não tenho o DOM instalado na minha máquina! Segue a dúvida ae, o que é melhor para analisar este XML gerado da URL do site dos Correios: SAX ou DOM e qual tem a melhor performance ou qual é a mais fácil de trabalhar? Se o melhor for o DOM, como instalo? A maioria dos WebHosts tem essa classe para ser utilizada? Valeu ae, Falow, Marcel Compartilhar este post Link para o post Compartilhar em outros sites
dokkalfr 0 Denunciar post Postado Novembro 22, 2004 Depende do que tu quer fazer com o XML para escolher entre SAX e DOM ... Se tu precisa extrair alguns dados pra por numa BD por exemplo eu utilizaria DOM ... o problema com o XML gerado pelo site dos correios é que ele vem com muitos espaços antes do <?xml ... ?> que deve ser a primeira coisa do arquivo, mas isso tu resolve com http://br.php.net/trim http://br.php.net/xml http://br.php.net/domxml Compartilhar este post Link para o post Compartilhar em outros sites
msantos 0 Denunciar post Postado Novembro 22, 2004 Ae pessoal beleza?Então cara, valeu ae pelas respostas... Tô dando um re-olhada na documentação do PHP até conseguir contornar este problema...Só mais uma perguntinha simples: A maioria dos servidores (Locaweb, HostNet, Hostmidia) de Web utiliza DOM para poder manipular XML?Valeu,Marcel Compartilhar este post Link para o post Compartilhar em outros sites
dokkalfr 0 Denunciar post Postado Novembro 22, 2004 dos que eu usei, todos webhosts tinham suporte a DOM sim!!Outro detalha pró-DOM ... em PHP4 a extensão pra DOM utiliza a libxml e a extensão para SAX utiliza expat. É sabido q a libxml é mais eficiente que a expat!! Compartilhar este post Link para o post Compartilhar em outros sites
msantos 0 Denunciar post Postado Novembro 22, 2004 Ae pessoal, beleza?Owww cara, valeu ae a dica...Consegui fazer a consulta... O problema era que o XML gerado possuía uns espaços em branco em seu início, como foi dito!!! A solução era usar o método trim()!!!Valeu pela informações sobre os WebHosts que aceitam DOM!!! Na verdade eu fiz com SAX, mas vou logo tentar fazer com o DOM!!! Visto que DOM tem melhor performance...Valeu,Marcel Compartilhar este post Link para o post Compartilhar em outros sites
msantos 0 Denunciar post Postado Novembro 24, 2004 Fala ae pessoal, mais uma vez eu aqui, tudo beleza?Então, li a tudo referente a DOM na documentação do PHP4 para instalar esta extensão no computador (Win98), porém não consegui instalar...Acho que fiz tudo certo, segui todos os passos, copiei a DLL indicada para a pasta System, descomentei a linha do php.ini referente a esta extensão mas não funcionou! Reiniciei o Apache, o SO, refiz todos os passos e não deu certo!O erro que ocorre é que não consigo instanciar a classe (classe inexistente)...Owww... O que eu fiz de errado e talz?Valeu ae,Marcel Compartilhar este post Link para o post Compartilhar em outros sites
dokkalfr 0 Denunciar post Postado Novembro 24, 2004 Ao que tudo indica: nada!! =/ Eu acho que o PHP é 1000000x mais fácil de instalar no linux (compilando o fonte) do que no Ruindow$ ... então a dica que eu dou sempre pra quem tem problemas com instalação (do PHP ou de extensões) e só precisa do PHP pra desenvolver é que usem http://www.easyphp.org !! A versão mais recente vem com DOM habilitado! Compartilhar este post Link para o post Compartilhar em outros sites