Megas 0 Denunciar post Postado Setembro 24, 2009 Eu uso loadvars para fazer comunicação com o php, em alguns sites funciona beleza, crieu uma tabela de preços para www.tatacon.com.br que funciona muito bem. Mas uso ezatamente o mesmo sistema em meu site e funciona somente quendo quer, ultimamente não quer mais. Então: existe algo melhor que LoadVars e que funcione? Eu estou aprendendo tambem a usar ajax, aprendi que é possivel fazer um arquivo php fingir que é xml mudando o header, será que há maneira de fazer o flash ler xml imprimido em um arquivo php? Eu costumo usar os codigos: stop (); var php_process = new LoadVars(); var post_variable = new LoadVars(); post_variable.id = 1 post_variable.sendAndLoad("http://www.minhapagina.com.br/meu_script.php", php_process, "POST"); php_process.onLoad = function (success:Boolean):Void{ if (success){ play()...... Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Setembro 24, 2009 Bom XML sempre é uma opção Mas LoadVars não tem substituto não =/ Infelizemente só com AS 3.0 Mas nunca tive problemas com ele basta colocar o &variavel=valor& Que funciona perfeitamente bem... abraços Compartilhar este post Link para o post Compartilhar em outros sites
Megas 0 Denunciar post Postado Setembro 26, 2009 mas há uma maneira em que pode-se fazer um script php se apresentar como xml mudando as configurações do header: $gmtDate = gmdate("D, d M Y H:i:s"); header("Expires: {$gmtDate} GMT"); header("Last-Modified: {$gmtDate} GMT"); header("Cache-Control: no-cache, must-revalidate"); header("Progma: no-cache"); header("Content-type: application/xml"); echo $minha_estrutura_xml; Será que da pra fazer o flash carregar esse xml? eu preciso de algo bem dinamico e so com php e mysql Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Setembro 26, 2009 Que eu saiba sim... Você consegue interpretar um php com esquema XML pelo flash Não sei com AS 2.0 se isso vai la da muito certo... pode ser que você não consiga. Mas com AS 3.0 da com certeza pq o esquema do twitter se faz assim ;) E o flash não entende isso header("Cache-Control: no-cache, must-revalidate"); Tem que colocar uma variavel em get ou algo assim para matar o cache que esteja no proprio flash... de onde ele vai carregar as informações Abraços Compartilhar este post Link para o post Compartilhar em outros sites
Megas 0 Denunciar post Postado Setembro 26, 2009 O problema é que eu não sei nada de As3 (e vai sair o AS4) Eu vou dar uma pesquisada e tentar fazer. Thanks Compartilhar este post Link para o post Compartilhar em outros sites
Megas 0 Denunciar post Postado Setembro 26, 2009 Droga me ocorreu um problema: Como eu envio as variaveis? O Load Vars sem problema ele envia e tudo, mas sem ele como eu faria? integração loadVars-loadXML? como seria?.... Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Setembro 27, 2009 Não entendi? Você vai ter que usar o LoadVars() quer você queira ou não para enviar as variaveis... ou use o antigo LoadVariablesNum que não é mais recomentando... LoadVars.send() Ou LoadVars.sendAndLoad() Para enviar as variaveis ;) Mesmo para trabalhar com XML e criar ou desmontar xml com php... você vai ter que usar loadvars Ou crie funções javascript que chamem funções com getURL que passe parametros... e o javascript se comunica com o php e faz a birosca toda funcionar.... Abraços Compartilhar este post Link para o post Compartilhar em outros sites
Megas 0 Denunciar post Postado Setembro 27, 2009 É que eu pego informações do banco de dados, o loadVars, envia uma variavel para o php, faz a consulta então retorna o resultado print"&variavel... mas não da pra fazer isso com loadXML. Eu so queria usar uma estrutura em xml pq parece que o carregamento dele nunca falha (ao contrario do loadVars) Compartilhar este post Link para o post Compartilhar em outros sites
Megas 0 Denunciar post Postado Setembro 27, 2009 Ele reconhece como sendo xml: testexml.php <? $gmtDate = gmdate("D, d M Y H:i:s"); header("Expires: {$gmtDate} GMT"); header("Last-Modified: {$gmtDate} GMT"); header("Cache-Control: no-cache, must-revalidate"); header("Progma: no-cache"); $meuXML="<?xml version='1.0' encoding='utf-8'?>"; $meuXML.="<dados>"; $meuXML.="<informacao>teeexto</informacao>"; $meuXML.="</dados>"; header("Content-type: application/xml"); echo $meuXML; ?> .fla: var myXml:XML = new XML(); myXml.onLoad = function(success:Boolean):Void{ if(success){ trace(myXml.childNodes[0].firstChild.nodeName) }else{ trace("erro") } } myXml.load("http://www.site.com/testexml.php") apesar que o nodeValue retorna null... Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Setembro 27, 2009 Foi o que eu te falei... Em AS 2.0 isso ai as vezes não funciona não ;) O jeito é você transformar e salvar como XML em seu servidor ai sim carregar... E eu nunca vi LoadVars bem feito falhar... e se falhou é pq o código ta errado. Abraços Compartilhar este post Link para o post Compartilhar em outros sites
Megas 0 Denunciar post Postado Setembro 27, 2009 Cara, ele funciona so quando quer: stop (); var php_process = new LoadVars(); var post_variable = new LoadVars(); post_variable.id = Number(_root.id); post_variable.sendAndLoad("http://www.meusite.com/date.php", php_process, "POST"); php_process.onLoad = function (success:Boolean):Void{ if (success){ _root.var = unescape(this.var); play (); }else{ gotoAndPlay(1); } } Nada aqui está errado. Sera que tem algo haver com o servidor gratuito? Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Setembro 27, 2009 Esse código não está correto por isso que não funcina sempre... LoadVars se faz assim: var lv:LoadVars = new LoadVars(); var sv:LoadVars = new LoadVars(); sv.id = Number(_root.id); sv.sendAndLoad("http://www.meusite.com/date.php", lv, "POST"); lv.onLoad = function(ok){ if(ok) var pega = lv.variavel; else trace('deu erro'); } Ou seja você tem que por o loadvars.variavel e não _root.variavel Abraços Compartilhar este post Link para o post Compartilhar em outros sites
Matheus Brito 12 Denunciar post Postado Setembro 27, 2009 Nunca precisei usar loadvars, sempre trabalho com xml. Abs Compartilhar este post Link para o post Compartilhar em outros sites
Megas 0 Denunciar post Postado Setembro 28, 2009 então o problema é _root.var = unescape(this.var); vs var pega = lv.variavel; ? o _root.var é so a variavel que eu estou definindo, vai no root. lv e this não deveria ter diferença, eu vou testar. E kisuke, a aplicação que eu quero fazer é algo semelhante ao perfil de uma pessoa no forum do imaster. Por exemplo: você é o que? um moderador, q uando se cadastrou? 00/00/00, quantas postagens? 2222... O flash tem que pegar essas informações do php. Isso vai ser muito dinamico, por isso queria um xml dinamico Compartilhar este post Link para o post Compartilhar em outros sites
Megas 0 Denunciar post Postado Setembro 28, 2009 não funcionou... eu alterei o codigo e não funciona: var php_process = new LoadVars(); var post_variable = new LoadVars(); post_variable.id = Number(_root.id); post_variable.sendAndLoad("http://www.adinancenci.adminsites.com.br/extrasolar/planet_date.php", php_process, "POST"); php_process.onLoad = function (success:Boolean):Void{ if (success){ var variavel= php_process.variavel; play (); }else{ gotoAndPlay(1); } } Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Setembro 28, 2009 É mas como você está enviando essa variavel no php????? Assim: <?php echo "&variavel=Teste&"; ?>??? Se não foi assim... ta errado Abraços Compartilhar este post Link para o post Compartilhar em outros sites
Megas 0 Denunciar post Postado Setembro 29, 2009 print "&variavel1=$variavel1"; print "&variavel2=$variavel2"; ... Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Setembro 29, 2009 Como já repeti... 2 vezes em minhas linhas Precisa do & no final print "&variavel1=$valor&"; Abraços Compartilhar este post Link para o post Compartilhar em outros sites
Megas 0 Denunciar post Postado Outubro 1, 2009 Eu ainda não cheguei a resolver o problema, vou tentar refazer o swf desde o zero pra ver. Mas agora eu quero tentar fazer ele carregar xml do php. Eu descobri como enviar variaveis, é so usar loadXML(script.php?variavel=valor) Mas eu dou um trace em todo o xml ou então nos nomes dos nodos e funciona, mas ele não reconhece o valor dos nodos, sempre volta null. Eu não sei usar AS3, alguem sabe por que os scripts não funcionam? <? $gmtDate = gmdate("D, d M Y H:i:s"); header("Expires: {$gmtDate} GMT"); header("Last-Modified: {$gmtDate} GMT"); header("Cache-Control: no-cache, must-revalidate"); header("Progma: no-cache"); $meuXML="<?xml version='1.0' encoding='utf-8'?>"; $meuXML.="<dados>"; $meuXML.="<informacao>teeexto</informacao>"; $meuXML.="</dados>"; header("Content-type: application/xml"); echo $meuXML; ?> Flash: var myXml:XML = new XML(); myXml.onload = function(success:Boolean):Void{ if(success){ trace(myXml) // funciona trace(myXml.childNodes[0].firstChild.nodeName) // funciona trace(myXml.childNodes[0].firstChild.nodeValue) //não funciona }else{ trace("erro") } } myXml.load("http://www.site.com/testexml.php") Compartilhar este post Link para o post Compartilhar em outros sites