AdinanCenci 0 Denunciar post Postado Novembro 5, 2009 Eu tentei fazer aplicações dinamicas com PHP, banco de dados com o sendAndLoad. Ele funcionava na maquina em que queria funcionar Tentei substituir por XML, deu no mesmo... Por favor. alguem sabe o que tenho que fazer pra isso funcionar? A resposta do php é muito lenta? A internete que é lenta? O que as vezes ele nunca carrega as informações do PHP? testexml.php : <? //estruturo o xml: $meuXML="<?xml version='1.0' encoding='utf-8'?>"; $meuXML.="<dados>"; $meuXML.="<menus>teeexto</menus>"; require("conexao.php"); $n=0; $oxml=mysql_query("SELECT * FROM fucaxml WHERE menupai=''"); while($xmlsql=mysql_fetch_array($oxml)){ $meuXML.="<menus$n>".$xmlsql['titulo'].""; $submenus=mysql_query("SELECT * FROM fucaxml WHERE menupai='".$xmlsql['Id']."'"); $z=0; while($submenusarrays=mysql_fetch_array($submenus)){ $meuXML.="<submenus$z>".$submenusarrays['titulo']."</submenus$z>"; $z++; } $meuXML.="</menus$n>"; $n++; } $meuXML.="</dados>"; echo $meuXML; ?> stop() var myXML:XML = new XML(); myXML.ignoreWhite=true; myXML.load("http://www.site.com/testexml.php"); myXML.onLoad = function(success){ if (success){ //trace (myXML); play() } } Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Novembro 6, 2009 1 - Vamos corrigir seu php tá Use sempre <?php e não apenas <?, pois nem todos os servidores entedem isso 2 - Para que funcione isso AS 2.0 não aceita informação direta do php como um XML, você tem que usar a função file do php para salvar esse PHP e então abrir no flash use fopen para criar um arquivo e salvar e no flash de o nome que você salvou do arquivo XML no php em vez de tentar abrir o PHP Se for fazer seu código em AS 3 ele aceita esse tipo de coisa que você ta tentando fazer. Espero ter ajudado Abraços Compartilhar este post Link para o post Compartilhar em outros sites
carneirinho 7 Denunciar post Postado Novembro 6, 2009 Eu sempre usei php retornando xml e nunca tive problemas com isso, não acho que seja preciso fazer o arquivo "físico" no servidor pois sempre usei diretamente e nunca deu problemas, tente acessar a página do php e depois ir em "Exibir código fonte" para ver se ele ta gerando os caracteres corretamente, porque as vezes ele printa normal na tela, mas no código fonte pode estar diferente. abraço Compartilhar este post Link para o post Compartilhar em outros sites
AdinanCenci 0 Denunciar post Postado Novembro 6, 2009 Pois é. O que eu quero fazer é algo muito dinamico e tem que ser um script PHP. Em algumas maquinas ele da esse problema. Ele não carrega, fica la sem fazer nada e não carrega. Se o problema for a velocidade da internet o que eu faço pra contornar? dou um sleep no php para ver se ele tem maior tempo pra escrever o xml e o flash ler? carneirinho, dava pra me passar um exemplo dos seus scripts? Compartilhar este post Link para o post Compartilhar em outros sites
AdinanCenci 0 Denunciar post Postado Novembro 9, 2009 Então ninguem sabe onde está o erro? No one can help me? Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Novembro 9, 2009 Ok como eu havia dito seu erro ta no PHP O carnerinho disse que tem um jeito de fazer... mas eu infelizmente desconheço =/ O meu jeito seria assim: <?php //estruturo o xml: $meuXML="<?xml version='1.0' encoding='utf-8'?>"; $meuXML.="<dados>"; $meuXML.="<menus>teeexto</menus>"; require("conexao.php"); $n=0; $oxml=mysql_query("SELECT * FROM fucaxml WHERE menupai=''"); while($xmlsql=mysql_fetch_array($oxml)){ $meuXML.="<menus$n>".$xmlsql['titulo'].""; $submenus=mysql_query("SELECT * FROM fucaxml WHERE menupai='".$xmlsql['Id']."'"); $z=0; while($submenusarrays=mysql_fetch_array($submenus)){ $meuXML.="<submenus$z>".$submenusarrays['titulo']."</submenus$z>"; $z++; } $meuXML.="</menus$n>"; $n++; } $meuXML.="</dados>"; $arquivo = "teste.xml"; $nodes = fopen($arquivo,'w'); fwrite($nodes, $meuXML); fclose($nodes); ?>Ai no flash você só teria que alterar a chamada do load: stop() var myXML:XML = new XML(); myXML.ignoreWhite=true; myXML.load("http://www.site.com/teste.xml"); myXML.onload = function(success){ if (success){ //trace (myXML); play() } } Mas acredito que se você estiver usando o primeiro código... você pode tentar chamar exatamente como está seu código só que no flash em vez de colocartestexml.php você altera para testexml.xml Da uma olhada para ver se funciona. Abraços Compartilhar este post Link para o post Compartilhar em outros sites