Escolar Documentos
Profissional Documentos
Cultura Documentos
Introdução
O Flash permite que envies variáveis externas para dentro do .swf usando vários métodos:
A primeira parte deste tutorial mostra o que estes três métodos são. A segunda mostra como
determinar quando o Movie recebeu os dados. A terceira demostra como o Flash consegue
enviar dados para um script server-side com uma simples alteração do comando loadVariables.
Finalmente, a quarta aborda as características do Flash 5 que permitem manipular melhor os
processos de envio e carregamento.
© 2002 VISUALWORK Produções Multimedia, Lda. Todos os direitos reservados. Qualquer reprodução, incluindo fotocópia, só pode ser feita com autorização expressa da VISUALWORK.
FLASHWEBTRAINING.com, truquesedicas.com e respectivos logos são marcas registadas da VISUALWORK Produções Multimedia, Lda.
Parte I
Este método passa as variáveis para dentro de um .swf via declaração da tag "OBJECT"
no documento HTML:
<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://active.macromedia.com/flash2/cabs/swflash.cab#version=5,0,30,0"
ID=mymovie WIDTH=550 HEIGHT=400>
<PARAM NAME=movie
VALUE="meumovie.swf?email=nome@truquesedicas.com&user=nome">
<PARAM NAME=loop VALUE=false>
<PARAM NAME=menu VALUE=false>
<PARAM NAME=quality VALUE=best>
<PARAM NAME=bgcolor VALUE=#FFFFFF>
<EMBED src="mymovie.swf?email=nome@truquesedicas.com&user=nome "
name="mymovie"
loop=false menu=false quality=best
bgcolor=#FFFFFF
width=550 height=400
swLiveConnect=true type="application/x-shockwave-flash"
pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?
P1_Prod_Version=ShockwaveFlash">
</EMBED>
</OBJECT>
Este método é muito parecido com o método anterior. Neste caso as variáveis estão
colocadas num ficheiro de texto em vez de estar na declaração da tag "OBJECT".
&email=nome@truquesedicas.com&user=nome&done=y&eol=y
© 2002 VISUALWORK Produções Multimedia, Lda. Todos os direitos reservados. Qualquer reprodução, incluindo fotocópia, só pode ser feita com autorização expressa da VISUALWORK.
FLASHWEBTRAINING.com, truquesedicas.com e respectivos logos são marcas registadas da VISUALWORK Produções Multimedia, Lda.
LoadVariables("minhas_variaveis.txt","");
Quando o .swf evoca o comando "loadVariables", este pede ao ficheiro de texto (neste
caso minhas_variaveis.txt) que está no servidor. O pedido do ficheiro de texto devolve a
linha das variáveis para o .swf.
Mais uma vez este método é muito similar aos métodos anteriores de carregamento. O
script é usado para enviar a linha de variáveis no mesmo formato que enviado no ficheiro
de texto.
<?
$returnurlstring = "&email=nome@truquesedicas.com&user=nome&done=y&eol=y";
echo $returnurlstring;
?>
loadVariables("minhas_variaveis.php","");
#!/usr/bin/perl
$returnurlstring = "&email=nome@truquesedicas.com&user=nome&done=y&eol=y";
print $returnurlstring;
loadVariables("minhas_variaveis.cgi","");
<%
$returnurlstring ="&email=nome@truquesedicas.com&user=nome&done=y&eol=y";
response.write(returnurlstring)
%>
© 2002 VISUALWORK Produções Multimedia, Lda. Todos os direitos reservados. Qualquer reprodução, incluindo fotocópia, só pode ser feita com autorização expressa da VISUALWORK.
FLASHWEBTRAINING.com, truquesedicas.com e respectivos logos são marcas registadas da VISUALWORK Produções Multimedia, Lda.
loadVariables("myvariables.asp","");
loadVariables("myvariables.cfm","");
Quando o comando loadVariables é evocado no .swf, este inicia a execução do script que
está no servidor. O script gera a linha das variáveis e envia-a para o .swf. Isto é válido
para os quatro scripts anteriores
© 2002 VISUALWORK Produções Multimedia, Lda. Todos os direitos reservados. Qualquer reprodução, incluindo fotocópia, só pode ser feita com autorização expressa da VISUALWORK.
FLASHWEBTRAINING.com, truquesedicas.com e respectivos logos são marcas registadas da VISUALWORK Produções Multimedia, Lda.
PARTE II
O esquema para detecção de dados carregados no Flash é usar uma variável para
identificar que os dados foram completamente carregados. No nosso caso usamos a
variável "done".
O carregamento das variáveis e a sua detecção é feito ao longo de cinco frames, analisa
os screenshots das actions das cinco frames.
Frame #1
Frame #2
© 2002 VISUALWORK Produções Multimedia, Lda. Todos os direitos reservados. Qualquer reprodução, incluindo fotocópia, só pode ser feita com autorização expressa da VISUALWORK.
FLASHWEBTRAINING.com, truquesedicas.com e respectivos logos são marcas registadas da VISUALWORK Produções Multimedia, Lda.
Frame #3
Frame #4
© 2002 VISUALWORK Produções Multimedia, Lda. Todos os direitos reservados. Qualquer reprodução, incluindo fotocópia, só pode ser feita com autorização expressa da VISUALWORK.
FLASHWEBTRAINING.com, truquesedicas.com e respectivos logos são marcas registadas da VISUALWORK Produções Multimedia, Lda.
Frame #5
Isto demonstra o loop feito enquanto espera que a variável "done" seja carregada do
ficheiro minhas_variaveis.txt. Portanto, isto acontece até que o código &done=y&eol=y
seja carregado. A variavel eol=y não tem importância, é só com o propósito de prevenir
qualquer retorno da variável done.
© 2002 VISUALWORK Produções Multimedia, Lda. Todos os direitos reservados. Qualquer reprodução, incluindo fotocópia, só pode ser feita com autorização expressa da VISUALWORK.
FLASHWEBTRAINING.com, truquesedicas.com e respectivos logos são marcas registadas da VISUALWORK Produções Multimedia, Lda.
No zip dos ficheiros do tutorial (carregar_var.zip) tens o ficheiro carregar_variaveis01.fla,
abre-o, analisa o código e tenta fazer o mesmo por ti.
Deverás ter em atenção alguns pontos quando trabalhas com a action loadVariables:
Coloca as frames do carregamento (load) num symbol Movie Clip para que
te seja permitido evocar este processo em qualquer altura
© 2002 VISUALWORK Produções Multimedia, Lda. Todos os direitos reservados. Qualquer reprodução, incluindo fotocópia, só pode ser feita com autorização expressa da VISUALWORK.
FLASHWEBTRAINING.com, truquesedicas.com e respectivos logos são marcas registadas da VISUALWORK Produções Multimedia, Lda.
PARTE III
Nesta secção vamos modificar a action loadVariables de forma a que envie dados para um
script alojado no servidor. Enviar dados usando o Flash é muito similar ao envio de dados
a partir de forms HTML, utilizando os métodos GET ou POST:
Método GET
<HTML>
<HEAD><TITLE>Teste de Form</TITLE></HEAD>
<BODY>
<FORM ACTION="processform.php" METHOD="GET">
email address:
<INPUT TYPE="TEXT" NAME="email" VALUE="nome@truquesedicas.com">
<INPUT TYPE="SUBMIT" VALUE="ENTER">
</FORM>
</BODY>
</HTML>
Método POST
<HTML>
<HEAD><TITLE>Teste Form</TITLE></HEAD>
<BODY>
<FORM ACTION="processform.php" METHOD="POST">
email address:
<INPUT TYPE="TEXT" NAME="email" VALUE="nome@truquesedicas.com">
<INPUT TYPE="SUBMIT" VALUE="ENTER">
</FORM>
</BODY>
</HTML>
email="nome@truquesedicas.com";
loadVariables("processform.php","","post");
© 2002 VISUALWORK Produções Multimedia, Lda. Todos os direitos reservados. Qualquer reprodução, incluindo fotocópia, só pode ser feita com autorização expressa da VISUALWORK.
FLASHWEBTRAINING.com, truquesedicas.com e respectivos logos são marcas registadas da VISUALWORK Produções Multimedia, Lda.
O que o Get envia
O Flash usa a timeline onde a action loadVariables está localizada para definir que
váriaveis manda para o script. Quer isto dizer o quê? Por exemplo, se a action
loadVariables estiver na timeline principal do movie, então todas as variáveis definidas na
timeline principal são enviadas pela action loadVariables para o script.
Frame #1
Frame #2
Frame #3
© 2002 VISUALWORK Produções Multimedia, Lda. Todos os direitos reservados. Qualquer reprodução, incluindo fotocópia, só pode ser feita com autorização expressa da VISUALWORK.
FLASHWEBTRAINING.com, truquesedicas.com e respectivos logos são marcas registadas da VISUALWORK Produções Multimedia, Lda.
Frame #4
Frame #5
Para ser selectivo nas variáveis a enviar para o script, este processo deve ser movido para
dentro de um Movie Clip. Isto porque o Movie Clip tem a sua própria timeline, e por isso
só as variáveis definidas no Movie Clip serão enviadas pela action loadvariables quando
esta é chamada.
© 2002 VISUALWORK Produções Multimedia, Lda. Todos os direitos reservados. Qualquer reprodução, incluindo fotocópia, só pode ser feita com autorização expressa da VISUALWORK.
FLASHWEBTRAINING.com, truquesedicas.com e respectivos logos são marcas registadas da VISUALWORK Produções Multimedia, Lda.
Envio selectivo com Movie Clips
Supõe também que queremos enviar só a variável nome e a cp através do método post
para o script "processform.php". A timeline do Movie Clip terá este aspecto:
Frame #1
Frame #2
Frame #3
© 2002 VISUALWORK Produções Multimedia, Lda. Todos os direitos reservados. Qualquer reprodução, incluindo fotocópia, só pode ser feita com autorização expressa da VISUALWORK.
FLASHWEBTRAINING.com, truquesedicas.com e respectivos logos são marcas registadas da VISUALWORK Produções Multimedia, Lda.
Frame #4
Frame #5
Nota que isto é importante para determinar em antemão qual o método, GET ou POST, a
ser usado pelo script. Pensa nisto como duas linguagens diferentes onde o sender (nós) e
o script (eles) têm que concordar para que se entendam um ao outro.
© 2002 VISUALWORK Produções Multimedia, Lda. Todos os direitos reservados. Qualquer reprodução, incluindo fotocópia, só pode ser feita com autorização expressa da VISUALWORK.
FLASHWEBTRAINING.com, truquesedicas.com e respectivos logos são marcas registadas da VISUALWORK Produções Multimedia, Lda.
Tenta tu próprio
As permissões talvez tenham que ser ajustadas para permitir que os scripts
corram - normalmente isto acontece com os scripts Perl e PHP.
© 2002 VISUALWORK Produções Multimedia, Lda. Todos os direitos reservados. Qualquer reprodução, incluindo fotocópia, só pode ser feita com autorização expressa da VISUALWORK.
FLASHWEBTRAINING.com, truquesedicas.com e respectivos logos são marcas registadas da VISUALWORK Produções Multimedia, Lda.
PARTE IV
Auto detecção
Até agora usámos a variável done=y para detectar se o ficheiro tinha sido completamente
carregado, e este método resulta tanto no Flash 4 como no Flash 5. Especifico para o
Flash 5 é o método que permite a detecção aconteça automaticamente. Quer isto dizer
eliminar a variável done completamente do processo, e substituir isto com algo chamado
onClipEvent(data). Vê como fica agora o processo:
Frame #1
Frame #2
© 2002 VISUALWORK Produções Multimedia, Lda. Todos os direitos reservados. Qualquer reprodução, incluindo fotocópia, só pode ser feita com autorização expressa da VISUALWORK.
FLASHWEBTRAINING.com, truquesedicas.com e respectivos logos são marcas registadas da VISUALWORK Produções Multimedia, Lda.
O Painel das actions do Movie Clip deverá ter o seguinte código:
Tenta tu próprio
As permissões talvez tenham que ser ajustadas para permitir que os scripts
corram - normalmente isto acontece com os scripts Perl e PHP.
E é tudo!!
© 2002 VISUALWORK Produções Multimedia, Lda. Todos os direitos reservados. Qualquer reprodução, incluindo fotocópia, só pode ser feita com autorização expressa da VISUALWORK.
FLASHWEBTRAINING.com, truquesedicas.com e respectivos logos são marcas registadas da VISUALWORK Produções Multimedia, Lda.