Ritz 0 Denunciar post Postado Março 18, 2009 Olá Pessoal, Consegui fazer o ajuste do flash para ler um parametro direto no html, ele chama os txts em ordem, só que meus txts estão em uma pasta no servidor e o flash para ficar organizado esta em outra pasta, alguém sabe me dizer como eu faço com que ele leia de outra pasta? No momento o flash esta funcionando com o seguinte paramentro no html: <div style="height:155px; width:115px;"><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="115" height="155"> <param name="movie" value="selo_3dias.swf" /> <param name="quality" value="high" /> <embed src="selo_3dias.swf?cidz=Guaranta-SP.txt,RiodeJaneiro-RJ.txt,SaoPaulo-SP.txt,Brasilia-DF.txt,Crubixa-ES.txt,Abadia-BA.txt" width="115" height="155" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash"></embed> </object> </div> Mas, ele só lê se o swf estiver na mesma pasta que os txts, alguém sabe como posso determinar que ele procure em outra pasta? Obrigada! Compartilhar este post Link para o post Compartilhar em outros sites
carneirinho 7 Denunciar post Postado Março 18, 2009 Oi Ritz, tudo bem? Pelo o que entendi do seu código, você está mandando uma variavel pro _level0 com o nome de cidz e ela armazena vários endereços de arquivos de texto separados por virgula, porem dessa forma ele só será visualizado no firefox, por estar colocado apenas no embed e no param não está nada, mas enfim, nunca usei diretamente assim para ele puxar os valores do txt, provavelmente você está separando por virgula cada txt e dando um loadVars pra cada um deles seria isso? O caminho do txt será feito a partir do html e nã odeonde está o swf, então talvez você possa tentar usar arquivo.swf?pasta=txts&cidz=Guaranta-SP.txt,RiodeJaneiro-RJ.txt,SaoPaulo-SP.txt,Brasilia-DF.txt,Crubixa-ES.txt,Abadia-BA.txt no flash você pode dar um split do cidz para separa-los em um array e concatenar seu nome com o da pasta, assim você consegue fazer o loadvars de um por um ocm a pasta que você quiser, não sei se usar cidz=pasta/Guaranta-SP.txt,pasta/RiodeJaneiro-RJ.txt,pasta/SaoPaulo-SP.txt,pasta/Brasilia-DF.txt,pasta/Crubixa-ES.txt,pasta/Abadia-BA.txt daria erro por causa da barra, mas da pra tentar tambem, que código está usando no flash para pegar as variaveis? abraço, Carneirinho Compartilhar este post Link para o post Compartilhar em outros sites
Ritz 0 Denunciar post Postado Março 18, 2009 Oi Carneirinho, td bem? Obrigada pela atenção! Bem, no flash estou usando: arrCidades= cidz.split(","); arrTextos = arrCidades; Tentei usar assim no html: <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="115" height="155"> <param name="movie" value="selo_3dias.swf" /> <param name="quality" value="high" /> <embed src="selo_3dias.swf?pasta=/selos/txt&cidz=SaoPaulo-SP.txt,Brasilia-DF.txt" width="115" height="155" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash"> </embed> </object> Nada feito :( Oi Ritz, tudo bem? Pelo o que entendi do seu código, você está mandando uma variavel pro _level0 com o nome de cidz e ela armazena vários endereços de arquivos de texto separados por virgula, porem dessa forma ele só será visualizado no firefox, por estar colocado apenas no embed e no param não está nada, mas enfim, nunca usei diretamente assim para ele puxar os valores do txt, provavelmente você está separando por virgula cada txt e dando um loadVars pra cada um deles seria isso? O caminho do txt será feito a partir do html e nã odeonde está o swf, então talvez você possa tentar usar arquivo.swf?pasta=txts&cidz=Guaranta-SP.txt,RiodeJaneiro-RJ.txt,SaoPaulo-SP.txt,Brasilia-DF.txt,Crubixa-ES.txt,Abadia-BA.txt no flash você pode dar um split do cidz para separa-los em um array e concatenar seu nome com o da pasta, assim você consegue fazer o loadvars de um por um ocm a pasta que você quiser, não sei se usar cidz=pasta/Guaranta-SP.txt,pasta/RiodeJaneiro-RJ.txt,pasta/SaoPaulo-SP.txt,pasta/Brasilia-DF.txt,pasta/Crubixa-ES.txt,pasta/Abadia-BA.txt daria erro por causa da barra, mas da pra tentar tambem, que código está usando no flash para pegar as variaveis? abraço, Carneirinho Compartilhar este post Link para o post Compartilhar em outros sites
Ritz 0 Denunciar post Postado Março 18, 2009 Coloquei assim: <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="115" height="155"> <param name="movie" value="selo_3dias.swf?cidz=Guaranta-SP.txt,RiodeJaneiro-RJ.txt,SaoPaulo-SP.txt,Brasilia-DF.txt,Crubixa-ES.txt,Abadia-BA.txt" /> <param name="quality" value="high" /> <embed src="selo_3dias.swf?cidz=Guaranta-SP.txt,RiodeJaneiro-RJ.txt,SaoPaulo-SP.txt,Brasilia-DF.txt,Crubixa-ES.txt,Abadia-BA.txt" width="115" height="155" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash"> </embed> </object> Só na EMBED não aparece os dados no IE mesmo. Compartilhar este post Link para o post Compartilhar em outros sites
carneirinho 7 Denunciar post Postado Março 18, 2009 você esta usando firefox? precisaria usar assim pra internet explorer: <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="115" height="155"> <param name="movie" value="selo_3dias.swf?pasta=/selos/txt&cidz=SaoPaulo-SP.txt,Brasilia-DF.txt" /> <param name="quality" value="high" /> <embed src="selo_3dias.swf?pasta=/selos/txt&cidz=SaoPaulo-SP.txt,Brasilia-DF.txt" width="115" height="155" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash"> </embed> </object> Compartilhar este post Link para o post Compartilhar em outros sites
Ritz 0 Denunciar post Postado Março 18, 2009 Carneirinho, Estou usando firefox e tb testei no IE, se eu deixar na pasta dos txts ele funciona nos dois como você sugeriu o codigo, mas se eu tirar da pasta, nada feito :( Tentei usar link ao inves de pasta, mas tb não deu em nada. Compartilhar este post Link para o post Compartilhar em outros sites
carneirinho 7 Denunciar post Postado Março 18, 2009 Hmmm e tem algum problema usando as pastas do jeito que funcionou? Está difícil pra ajudar porque estou tentando adivinhar aqui o que você fez depois do split, teria como você postar o restante do código e mostrar o link onde funciona e onde não funciona? Até agora só estou usando da imaginação e de muita meditação pra tentar te ajudar :) Compartilhar este post Link para o post Compartilhar em outros sites
Ritz 0 Denunciar post Postado Março 18, 2009 O problema de usar o swf, html e txts na mesma pasta é que temos varios cliente e cada cliente tem uma pasta separada, então isso deixaria a pasta dos txts enorme, sendo que ela já é enorme, contem txts de todas as cidades do Brasil, por isso o drama..rss. Desculpe segue o codigo...é um flash que lê algumas variáveis de txts em uma sequência e sempre que repete a animação muda o txt, a não ser que só tenho um txt selecionado, codigo: var contaTxt:Number = 0; var intervalo:Number; var arrTextos:Array = new Array(); function inicia():Void { cadastraTextos(); chamaIntervalo(); leTexto(); } function chamaIntervalo():Void { // aqui this 2000 representa 2 segundos, //pois o setInterval retorna milisegundos intervalo = setInterval(leTexto, 33000); } function leTexto():Void { //aqui chama a variavel que determina o txt que será lido arrCidades= cidz.split(","); arrTextos = arrCidades; var lv:LoadVars = new LoadVars(); trace("lendo"); // essa linha é a chave, se quer que leia um texto por // vez a cada intervalo de tempo é só passar o arrTextos // como parâmetro do método load do LoadVars, daí ele vai // chamar o número correspondente ao itens da Array // 0, 1, 2, 3...e assim por diante lv.load(arrTextos[contaTxt]); trace("contando"); contaTextos(); lv.onLoad = function(ok) { if(ok) { trace("ok"); // campo de texto dinâmico que recebe o texto // texto no caso é a variável dentro do TXT _root.cid = this.cid; _root.cidade = this.cidade; _root.dia1 = this.dia1; _root.max1 = this.max1; _root.min1 = this.min1; _root.chuva1 = this.chuva1; _root.tempo1 = this.tempo1; _root.icone1 = this.icone1; _root.dia2 = this.dia2; _root.max2 = this.max2; _root.min2 = this.min2; _root.chuva2 = this.chuva2; _root.icone2 = this.icone2; _root.tempo2 = this.tempo2; _root.dia3 = this.dia3; _root.max3 = this.max3; _root.min3 = this.min3; _root.chuva3 = this.chuva3; _root.tempo3 = this.tempo3; _root.icone3 = this.icone3; //Troca o icone do primeiro dia trocaIcone(1); } else { trace("erro aqui"); } } } //Essa função troca o ícone do dia 'n' passado para ela. function trocaIcone(n:Number) { var icon:String = _root["icone" + n]; if (icon == 'cc') { _root.mc.icones.gotoAndStop("2"); trace("1"); } if (icon == 'ccn') { _root.mc.icones.gotoAndStop("3"); trace("2"); } if (icon == 'ch') { _root.mc.icones.gotoAndStop("4"); trace("3"); } if (icon == 'chn') { _root.mc.icones.gotoAndStop("5"); trace("4"); } if (icon == 'cv') { _root.mc.icones.gotoAndStop("6"); trace("5"); } if (icon == 'cvn') { _root.mc.icones.gotoAndStop("7"); trace("6"); } if (icon == 'en') { _root.mc.icones.gotoAndStop("8"); trace("7"); } if (icon == 'enn') { _root.mc.icones.gotoAndStop("9"); trace("8"); } if (icon == 'ge') { _root.mc.icones.gotoAndStop("10"); trace("9"); } if (icon == 'gen') { _root.mc.icones.gotoAndStop("11"); trace("10"); } if (icon == 'nb') { _root.mc.icones.gotoAndStop("12"); trace("11"); } if (icon == 'nbn') { _root.mc.icones.gotoAndStop("13"); trace("12"); } if (icon == 'nc') { _root.mc.icones.gotoAndStop("14"); trace("13"); } if (icon == 'ncn') { _root.mc.icones.gotoAndStop("15"); trace("14"); } if (icon == 'ne') { _root.mc.icones.gotoAndStop("16"); trace("15"); } if (icon == 'nen') { _root.mc.icones.gotoAndStop("17"); trace("16"); } if (icon == 'nv') { _root.mc.icones.gotoAndStop("18"); trace("17"); } if (icon == 'nvn') { _root.mc.icones.gotoAndStop("19"); trace("18"); } if (icon == 'pc') { _root.mc.icones.gotoAndStop("20"); trace("19"); } if (icon == 'pcn') { _root.mc.icones.gotoAndStop("21"); trace("20"); } if (icon == 'pi') { _root.mc.icones.gotoAndStop("22"); trace("21"); } if (icon == 'pin') { _root.mc.icones.gotoAndStop("23"); trace("22"); } if (icon == 'pn') { _root.mc.icones.gotoAndStop("24"); trace("23"); } if (icon == 'pnn') { _root.mc.icones.gotoAndStop("25"); trace("24"); } if (icon == 'tr') { _root.mc.icones.gotoAndStop("26"); trace("25"); } if (icon == 'trn') { _root.mc.icones.gotoAndStop("27"); trace("26"); } } function cadastraTextos():Void { }; function contaTextos():Void { trace ( arrTextos.length); if( contaTxt < arrTextos.length ) { contaTxt++; } if( contaTxt == arrTextos.length ) { contaTxt = 0; } trace (contaTxt); } inicia(); Esta um pouco bagunçado de tanto que já mexi nele..rss...os icones tb trocam sempre que troca o dia na animação, então no quadro chave dentro do movie de animação, coloquei: _root.trocaIcone(1); e tb estou usando set interval lá dentro para segurar um tempo nos dias. Melhorou agora a visualização? Se você ajudar mais posto o fla, ok? Valeu! Compartilhar este post Link para o post Compartilhar em outros sites
carneirinho 7 Denunciar post Postado Março 18, 2009 Este gotoAndStop não precisa de aspas, pois ele vai procurar pela string do label "1", "5".. etc. O que tb pode fazer é trocar o trace por um campo de texto dinamico para testar online ficanto campo_teste.text = valor, isso dentro do switch, faça isso e sobe pra gente ver o que ele está retornando e ir testando que pode estar errado. Compartilhar este post Link para o post Compartilhar em outros sites
Ritz 0 Denunciar post Postado Março 18, 2009 Carneirinho, Sou iniciante nas actions, na verdade sou designer e estou quebrando a cabeça aqui, desde que comecei a fazer este flash, então tirando o "tirar as aspas do gotoAndStop" não entendi o que é para fazer depois..rssss....desculpa...você pode me explicar melhor? Obrigada! Compartilhar este post Link para o post Compartilhar em outros sites
Ritz 0 Denunciar post Postado Março 18, 2009 Tenho que ir, a empresa vai fechar, se não for abuso, será que você pode me enviar no email? perez.rita@gmail.com Muito Obrigada!!!! abraços Compartilhar este post Link para o post Compartilhar em outros sites
Ritz 0 Denunciar post Postado Março 19, 2009 Carneirinho, Gostaria de te agradecer a ajuda, consegui aqui...fiz o flash chamar uma pasta antes e determinei no html a pasta txt, conforme você sugeriu. Valeu!!!!!! Só para o pessoal saber, caso alguém precise, chamei no flash: variavel.load("../"+p+"/"+arrTextos[contaTxt]); Esse comando fez com que o flash fosse para uma pasta fora da pasta que o swf esta e no parametro do html determinei a pasta, ficou assim: nomedoarquivo.swf?pasta=txt&nome=variaveis abraços Compartilhar este post Link para o post Compartilhar em outros sites
carneirinho 7 Denunciar post Postado Março 19, 2009 Desculpe não ter respondido antes pois ja tinha saído da empresa rumo a minha casa debaixo de uma forte chuva, parabens por ter conseguido a solução ainda mais sozinha, continue assim que logo estará pirada assim como todos nós. abraço Compartilhar este post Link para o post Compartilhar em outros sites