<pedrocorreia.net ⁄>
corner
<mySearch ⁄> <mySearch ⁄>

corner
 
corner
<mySnippets order="rand" ⁄> <mySnippets order="rand" ⁄>

corner
 
corner
<myContacts ⁄> <myContacts ⁄>

<email ⁄>


pc@pedrocorreia.net

<windows live messenger ⁄>


pedrojacorreia@hotmail.com

<myCurriculum type="pdf" ⁄>


Download
corner
 
corner
<myBlog show="last" ⁄> <myBlog show="last" ⁄>

corner
 
corner
<myNews show="rand" ⁄> <myNews show="rand" ⁄>

corner
 
corner
<myNews type="cat" ⁄> <myNews type="cat" ⁄>

corner
 
corner
<myQuote order="random" ⁄> <myQuote order="random" ⁄>

corner
 
corner
<myPhoto order="random" ⁄> <myPhoto order="random" ⁄>

<pedrocorreia.net ⁄>
corner
 
corner
<myAdSense ⁄> <myAdSense ⁄>

corner
 
corner
<myVisitorsMap ⁄> <myVisitorsMap ⁄>

corner
 
 

<Ler variáveis do PHP ⁄ >




clicks: 17963 17963 2007-03-28 2007-03-28 goto mySnippets mySnippets actionscript  Download  Bookmark This Bookmark This



Já tinha dado um exemplo num snippet anterior de como carregar informação no flash através de um ficheiro XML, esse ficheiro era gerado pelo PHP, porém podia ser gerado por asp, asp.net, jsp, you name it.

Nesse snippet a abordagem dada foi a de usar o XML, porque permite claramente uma maior flexibilidade na transferência de dados, porém se pretendiamos transferir uma pequena quantidade de dados provavelmente seria um desperdicio de recursos.

Mas será essa a única maneira de "enviar" informação para o Flash? Nope! No actionscript existe uma função loadVariables que vai permitir ler o conteúdo de um ficheiro.

Será usado novamente o PHP, mas como facilmente podem adivinhar poderá ser utilizada outra linguagem.

O exemplo que vou dar do ficheiro PHP é somente o envio para output de uma simples string, visto que o objectivo deste snippet não é demonstrar script PHP, mas sim Actionscript, mas por exemplo poderiam ir buscar os valores a uma BD.

Irei abordar esta "transferência" de informação de duas maneiras:
1º Caso queiramos tentar passar numa variável vários valores, poderemos usar um simbolo como separador, por exemplo: variavel=123$456$789$012, neste caso o "$" iria ser o separador;
Suponhamos que o php retorna algo deste tipo:
  1. <?php
  2. echo "variavel=123$456$789$012=123$456$789$012";
  3. ?>



Depois para ir buscar os valores e "decompo-los" no flash, poderia ser algo deste tipo:
  1. myVars = new LoadVars();
  2. myVars.load("teste.php"); //ler o ficheiro
  3. myVars.onLoad = function (success){
  4. var parametros:Array = myVars.variavel.split("$"); //criar um novo array, separando a string por $
  5. var aux:String="";
  6. var countParams:Number=parametros.length;
  7.  
  8. for (var i:Number = 0; i<countParams; i++) {
  9. aux+= "var "+(i+1)+": "+(parametros[i])+";\n "; //armazenar os valores para visualização
  10. }
  11.  
  12. TextBox.text=aux;
  13. }



Se por outro lado quisessemos passar várias variáveis com os respectivos valores (que provavelmente será o "normal"), uma possivel solução seria:
  1. <?php
  2. echo "nome=123&idade=456&telefone=789&email=012";
  3. ?>



O actionscript ficaria semelhante a isto:
  1. myVars = new LoadVars();
  2. myVars.load("teste.php"); //ler o ficheiro
  3. myVars.onLoad = function(success) {
  4. var aux:String = "";
  5. for (var phpVar in this) {
  6. aux += phpVar+" = "+this[phpVar]+"\n"; //guardar todo o conteúdo do myVars
  7. }
  8.  
  9. TextBox1.text = aux; //imprimir todo o conteúdo do myVars para debug por ex.
  10. TextBox2.text = myVars.nome; //imprimir variável especifica
  11. };




Qualquer erro/ dúvida é só dizer!









clicks: 17963 17963 2007-03-28 2007-03-28 goto mySnippets mySnippets actionscript  Download  Bookmark This Bookmark This