P3rukao 0 Denunciar post Postado Fevereiro 12, 2009 Olá galera foreira... Eu estou a desenvolver um mp3 player para um site, e não estou entendendo como enviar dados do php para o flash... :blink: Explicando melhor: Eu segui este tutorial (http://www.mxstudio.com.br/flash/mp3_player_com_xml/), e consegui monta-lo direitinho... está funcionando, porém, ele exibe uma playlist interna (dentro do flash), sendo que eu preciso dessa playlist em html normal, com os links e talz... De primeiro, eu vou ter um selectBox com uma lista de alguns itens de audio que eu posso mandar tocar. Depois que eu clicar nesse item, eu iria abrir uma outra página, com o layout do player montado e executando o item selecionado; Mais abaixo, na mesma página (esta ultima aberta), eu vou ter uma sequencia de links (<a></a>) com os itens de audio que eu posso mandar executar tbm... » Aguem tem idéia de como que eu faço isso?? » Mandar os dados da musica que ele deve tocar, para o flash, via PHP??? Compartilhar este post Link para o post Compartilhar em outros sites
P3rukao 0 Denunciar post Postado Fevereiro 12, 2009 se souberem de algum tuto, que faça isso, ou que seja até melhor do que o que eu mencionei acima, vai ser de grande ajuda tbm ;) Compartilhar este post Link para o post Compartilhar em outros sites
P3rukao 0 Denunciar post Postado Fevereiro 13, 2009 Bom dia.... Eu estava a pesquisar sobre o assunto... e vi que preciso usar um objeto LoadVars() para fazer a transferencia de dados GET ou POST entre o php e o flash... Mas eu ainda não entendi muito bem como usa-lo. Eu sei como enviar esses dados do FLASH para o PHP... como num formulario feito em flash... que manda os dados para um PHP de tratamento de dados! Porém: » Como que eu faço para mandar esses dados do PHP para o FLASH??? » Como que o flash vai saber que eu estou mandando esses dados para ele??? :huh: Compartilhar este post Link para o post Compartilhar em outros sites
Freelife 2 Denunciar post Postado Fevereiro 13, 2009 Eu tive um problema há um tempo atrás, precisava que o flash recebesse uma resposta do php se conseguiu gravar os dados no banco ou não, postei aqui e me disseram: usa: echo "&variavel=valor"... tópico: http://forum.imasters.com.br/index.php...p;#entry1206575 Espero ajudar... Abraços Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Fevereiro 13, 2009 Exemplo de LoadVars(); var obj_l:LoadVars = new LoadVars(); obj_l.load("seu arquivo.php"); obj_l.onLoad = function(success:Boolean) { if(success){ //seu código variavel = obj_l.variaveldophp; }else{ trace("erro ao carregar"); } } Compartilhar este post Link para o post Compartilhar em outros sites
P3rukao 0 Denunciar post Postado Fevereiro 13, 2009 Hummm... obrigado pelas respostas... Mas ainda tenho uma duvida: Nesses exemplos citados (por v6) acima, o flash recebe os dados do php, depois que ele mesmo já enviou alguma coisa para o mesmo.. tipo: Eu tenho um form em flash... mando os dados para o php... e ele retorna uma variavel com mensagem de sucesso... No meu caso... Eu vou ter uma página apenas em html normal (montado com php)... e quando eu clicar num link qualquer... eu vou abrir uma outra página, que vai conter o meu arquivo em flash (um player de audio). Ele então, deve abrir o audio, referente ao identificador que eu passei pelo link da outra página. Por isso eu estou meio confuso... » Como que o flash vai saber que eu estou mandando esses dados para ele??? Ô.õ Compartilhar este post Link para o post Compartilhar em outros sites
Freelife 2 Denunciar post Postado Fevereiro 13, 2009 não sei se entendi direito, mas quando você clicar no link, vai carregar a outra página, isso significa que o flash vai iniciar tudo de novo. Com isso ele vai pegar os dados que o php enviou. Testa aí... Abraços Compartilhar este post Link para o post Compartilhar em outros sites
P3rukao 0 Denunciar post Postado Fevereiro 13, 2009 seria intaum, para indicar no loadVars() para que ele "LEIA" a propria página em que esta??? tipo: var obj_l:LoadVars = new LoadVars(); obj_l.load("pagina2.php"); O flash estaria, nesse caso, na pagina2.php !!! Compartilhar este post Link para o post Compartilhar em outros sites
P3rukao 0 Denunciar post Postado Fevereiro 13, 2009 Eu precisaria usar o echo tbm... mesmo que as variaveis estejam vindo pelo GET... (já que vai ser um link, imagino que tenha q ser com o GET msm)??? Compartilhar este post Link para o post Compartilhar em outros sites
Public2004 79 Denunciar post Postado Fevereiro 13, 2009 Hummm... obrigado pelas respostas... Mas ainda tenho uma duvida: Nesses exemplos citados (por v6) acima, o flash recebe os dados do php, depois que ele mesmo já enviou alguma coisa para o mesmo.. tipo: Eu tenho um form em flash... mando os dados para o php... e ele retorna uma variavel com mensagem de sucesso... No meu caso... Eu vou ter uma página apenas em html normal (montado com php)... e quando eu clicar num link qualquer... eu vou abrir uma outra página, que vai conter o meu arquivo em flash (um player de audio). Ele então, deve abrir o audio, referente ao identificador que eu passei pelo link da outra página. Por isso eu estou meio confuso... » Como que o flash vai saber que eu estou mandando esses dados para ele??? Ô.õ Você pode passar o identificador (variável) pelo prórpio link do HTML, ex: "http://seudominio.com.br/paginaplayer.php?id=musica" E na paginaplayer.PHP, você recupera essa variável e joga no endereço do swf, ex: meuplayer.swf?id=variavel E no Flash, recupere e utilize como uma variável normal... Abs. Compartilhar este post Link para o post Compartilhar em outros sites
Freelife 2 Denunciar post Postado Fevereiro 13, 2009 var obj_l:LoadVars = new LoadVars(); obj_l.load("link.php", "POST"); obj_l.onLoad = function(success:Boolean) { if(success){ //seu código teste_txt.text = obj_l.variaveldophp; }else{ teste_txt.text = "erro ao carregar"; } } php: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Untitled Document</title> </head> <body> <?php echo "<a href='./dados.swf' method='POST' name='enviar'>Link</a>"; ?> </body> </html> <?php if($_POST["enviar"]){ echo "&variaveldophp=valor"; } ?> O berseck manja mais que eu... mas fiz esse teste aqui para postar... Abraços Compartilhar este post Link para o post Compartilhar em outros sites
P3rukao 0 Denunciar post Postado Fevereiro 13, 2009 FREE... eu tentei usar esse seu código... mas aqui não funcionou.... intão eu tentei adaptá-lo... mas está retornando um erro esquisito aqui.. Essa eh a index.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Documento sem título</title> </head> <body> <a href="index2.php?valor=gabriel" name="enviar">Link</a> </body> </html> Essa eh a index2.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Documento sem título</title> <script type="text/javascript" src="swfobject.js"></script> </head> <body> <? echo "&variaveldophp=".$_GET['valor']; ?> <div id="boxLancamentos" class="midia"> <div class="loaderMidia"> <script type="text/javascript"> swfobject.embedSWF("testeGet.swf", "midiatv", "425", "344", "9.0.0", "", {}, {wmode:"transparent"}); </script> <object id="midiatv" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="425" height="344"> <param name="movie" value="testeGet.swf" /> <param name="wmode" value="transparent"> <param name="quality" value="high" /> <param name="allowFullScreen" value="true"></param> <param name="allowscriptaccess" value="always"></param> <!--[if !IE]>--> <object type="application/x-shockwave-flash" data="testeGet.swf" width="425" height="344"> <!--<![endif]--> <div style=" clear:both; text-align:center; padding:5px 15px 5px;"> <b>É necessário ter o Flash Player instalado para visualizar o aplicativo.</b><br /> <p style="margin:0; padding:0"><a style="position:relative; height:auto;" href="http://www.adobe.com/go/getflashplayer" title="Clique para instalar o flash player"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Baixar o Adobe Flash player" /></a></p> </div> <!--[if !IE]>--> </object> <!--<![endif]--> </object> </div> <!-- end loaderMidia --> </div> <!-- end boxLancamentos --> </body> </html> No flash está do mesmo jeito que você postou... só trocando o nome da página que ele carrega no loadVars().... (index2.php) O erro q ele está reotrnando aqui eh o seguinte... no campo de texto dinamico do palco... ele está retornando todo o conteudo da página 2 abaixo do meu comando "echo" do php... =/ » POR QUE DIAXO ISSO ESTÁ ACONTECENDO??? num era pra ele retornar apenas o valor que eu passei na variável???? Compartilhar este post Link para o post Compartilhar em outros sites
Public2004 79 Denunciar post Postado Fevereiro 13, 2009 Tentou como falei? No seu link da página index.php: <a href="index2.php?valor=gabriel">Link</a> Na página index2.php recupere a variável que foi passada via GET: <? $variaveldophp=$_GET['valor']; ?>E acrescente esta variável no(s) caminho(s) do seu swf: testeGet.swf?valor=<? $variaveldophp ?> E no Flash, basta recuperar: _global.novaVar = valor; trace(novaVar); Compartilhar este post Link para o post Compartilhar em outros sites
P3rukao 0 Denunciar post Postado Fevereiro 13, 2009 Public , Eu só não entendi uma coisa: Não esou percebendo onde eu uso o "Caminho do SWF" que você mencionou... testeGet.swf?valor=<? $variaveldophp ?> » Desculpa a ignorância... mas eu não estou nem lembrado se sei como usar.. :( Compartilhar este post Link para o post Compartilhar em outros sites
Public2004 79 Denunciar post Postado Fevereiro 13, 2009 Na sua página index2.php que você chama o arquivo swf... <div id="boxLancamentos" class="midia"> <div class="loaderMidia"> <script type="text/javascript"> swfobject.embedSWF("testeGet.swf?valor=<? $variaveldophp ?>", "midiatv", "425", "344", "9.0.0", "", {}, {wmode:"transparent"}); </script> <object id="midiatv" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="425" height="344"> <param name="movie" value="testeGet.swf?valor=<? $variaveldophp ?>" /> <param name="wmode" value="transparent"> <param name="quality" value="high" /> <param name="allowFullScreen" value="true"></param> <param name="allowscriptaccess" value="always"></param> <!--[if !IE]>--> <object type="application/x-shockwave-flash" data="testeGet.swf?valor=<? $variaveldophp ?>" width="425" height="344"> <!--<![endif]--> <div style=" clear:both; text-align:center; padding:5px 15px 5px;"> <b>É necessário ter o Flash Player instalado para visualizar o aplicativo.</b><br /> <p style="margin:0; padding:0"><a style="position:relative; height:auto;" href="http://www.adobe.com/go/getflashplayer" title="Clique para instalar o flash player"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Baixar o Adobe Flash player" /></a></p> </div> <!--[if !IE]>--> </object> <!--<![endif]--> </object> </div> <!-- end loaderMidia --> </div> <!-- end boxLancamentos --> Compartilhar este post Link para o post Compartilhar em outros sites
P3rukao 0 Denunciar post Postado Fevereiro 13, 2009 Ahhhhh.... droga... mas que falta de percepção..... :o ^_^ vlw vou tentar aqui.... qqr coisa aviso se funcionou http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
P3rukao 0 Denunciar post Postado Fevereiro 13, 2009 Bacana Public.... funcionou certinho sim.... mas tenho outra duvida... No seu exemplo... eu apenas ponho a variavel que eu passei no "caminho" do swf... e funciona lgl... usando do outro jeito (chamando o loadVars()), não funfa .. =/ » Eu vi também que você usou, um _global na variavel do flash.... sendo que eu já li em alguns lugares... que não eh muito recomendado usar isso... Outra coisa... Você conhece o script do mp3Player que eu mencionei no inicio do topico??? Eu tentei aplicar o teste dos links aqui no player... mas eu não entendi mto bem como eu uso esses valores no player em questao. Já que no exemplo desse player, são gerados alguns mcs com ids que seriam equivalentes aos dados vindos do xml... !!! Eu imagino que seja nesse trecho que eu tenho que modificar algo... mas não sei bem como fazer... function monta() {/* Função monta, responsável por mostrar os dados do XML */ for (var i = 0; i<total; i++) {/* Para cada item retornado */ var mc:MovieClip = recebe.attachMovie("item", "item"+i, recebe.getNextHighestDepth());/* Importamos o MovieClip item */ mc._y = i*mc._height;/* Posicionamos o MovieClip um abaixo do outro */ mc.campo.text = xmlNode.childNodes[i].childNodes[2].firstChild.nodeValue;/* Colocamos o nome da música no MovieClip */ mc.id = i;/* Armazenamos o id do MovieClip */ mc.onPress = function() {/* Ao pressionar no MovieClip */ carregaMusica(this.id);/* Chamamos a função carregaMusica passando a música atual */ musicaAtual = this.id;/* Mudamos a música atual */ player._visible = true;/* Mostramos o MovieClip player */ /*recebe._visible = false; Escondemos o MovieClip recebe */ scrollBar._visible = false;/* Escondemos o scrollBar */ }; } if (recebe._height>scrollBar._height) {/* Verificamos se o MovieClip recebe é maior que o scrollBar */ scrollBar._visible = true;/* Se for maior, mostramos o scrollBar */ } else { scrollBar._visible = false;/* Se for menor, escondemos o scrollBar */ } } // end monta() » Alguém pode me dar uma ajudinha nisso??? Compartilhar este post Link para o post Compartilhar em outros sites
P3rukao 0 Denunciar post Postado Fevereiro 16, 2009 Eu estive observando o código por um instante... e me atentei para um negoço: » No modo como o player já está montado (http://www.mxstudio.com.br/flash/mp3_player_com_xml/), ele está carregando um arquivo xml... lendo-o... e depois executando o tal arquivo que eu selecionei numa lista que ele mesmo criou dinamicamente... » No modo que eu estou querendo fazer... ele apenas irá executar uma musica, que eu tenha selecionado na minha lista gerada pelo php, e passada via GET para o flash. Sendo assim... » Eu poderia matar a marioria dos codigos do meu AS ?? » Como por exemplo o XML ?? Ainda precisaria carregá-lo?? » Podem corrigir a minha lógica, se estiver errado. Estou meio confuso quanto a isso!!! » O que que eu tenho que fazer para pegar a referencia do arquivo que eu passo via GET, e executar a musica no meu player em flash??? Compartilhar este post Link para o post Compartilhar em outros sites
P3rukao 0 Denunciar post Postado Fevereiro 16, 2009 Seguinte... eu modifiquei o arquivo, de acordo com a duvida que eu tive e consegui colocar o bixo pra funcionar.... está tocando direiinho.. Versão modificado por mim... function monta() {/* Função monta, responsável por mostrar os dados do XML */ id = valor; carregaMusica(this.id);/* Chamamos a função carregaMusica passando a música atual */ /*musicaAtual = this.id; Mudamos a música atual */ player._visible = true;/* Mostramos o MovieClip player */ } // end monta() Porem... eu reparei em outro problema... a barra que mostra o progresso de execução do player.. não está acompanhando a musica por completo... TIPO: uma musica com usn 2min de duração, mesmo depois de já ter tocado mais da metade, a barra não saiu dos 15% da musica... ou seja, a musica acaba.. e a barriinha nem chegou perto da metade!!!! » Como que ajeito isso??? Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Fevereiro 16, 2009 verifique o seguinte musica.position // <---------- atual posição que a musica esta tocando... musica.duration // <---------- tempo total de duração da musica... esses dois são responsaveis pela conta para ver onde está a barra... Para fazer um negocio desses funcionar Se faz um mc que vai crescer mc_barra ai vai ficar algo assim mc_barra._width = musica.position / musica.duration * (tamanho total da barra que o mc_barra vai sobrepor) é bem por ai ;) Abraços Compartilhar este post Link para o post Compartilhar em outros sites