Flash CS3 - Flash CS4

Free tutorials and scripts for all.
Actionscript 3.0

Passare variabili da HTML a Flash CS3

This is a discussion on Passare variabili da HTML a Flash CS3 within the Articoli e tutorials forums, part of the Flash CS3 e Actionscript 3.0 category; Abbiamo visto come passare dei valori da Flash CS3 a PHP che ci permette di mantenere in comunicazioni le nostre ...


Go Back   Forum Flash CS3 Flash CS4 > Flash CS3 e Actionscript 3.0 > Articoli e tutorials

Register FAQ Members List Calendar Search Today's Posts Mark Forums Read
  #1 (permalink)  
Old 21-09-07, 17:48
Administrator
 
Join Date: Jul 2007
Location: Cesena
Posts: 4,486
Rep Power: 6
Flep is on a distinguished road
Passare variabili da HTML a Flash CS3

Abbiamo visto come passare dei valori da Flash CS3 a PHP che ci permette di mantenere in comunicazioni le nostre applicazioni Flash con il server.
Spesso abbiamo bisogno di assegnare ad un SWF un valore in ingresso utilizzando l' HTML della pagina in cui lo stesso SWF è inserito.
Con Flash 8 bastava definire una variabile sulla timeline ed assegnarli il valore tramite l' HTML.
Con Flash CS3 le cose sono un po cambiate e bisogna lavorare con la classe LoaderInfo, quindi seguite il prossimo esempio...
In questo esempio utilizo Adobe Dreamweaver per inserire un SWF in una pagina HTML e passare un valore all' SWF.

Creo un FLA che salvo con nome ' main.fla '.

Creo una pagina html con Dreamweaver e la chiamo ' main.html '.
Aggiungo main.swf alla pagina.
Seleziono l' SWF ed apro il pannello parametri, come da foto seguente:



come si può notare, inserisco come nome parametro ' flashvars ' ( in questo modo Flash sa che c'è un parametro per lui - vediamola così ) altrimenti non funziona.
Nel campo Valore, inserisco id=321. id sarà il nome della variabile che Flash cercherà e 321 il suo valore.

Ora torno a main.fla e gli assegno una Document class, un file AS che salvo con nome ' Main.as ', implementata in questo modo:
Code:
package
{
	import flash.display.MovieClip;
	import flash.text.TextField;
	import flash.display.LoaderInfo;
	
	public class Main extends MovieClip
	{
		private var id:String;
		
		public function Main()
		{
			getHTMLvars();
		}
		
		private function getHTMLvars():void
		{
			var value:String;
			var obj:Object=LoaderInfo(root.loaderInfo).parameters;
			for (value in obj)
			{
				id=String(obj[value]);
				try_txt.text=id;
			}
		}
	}
}
In sostanza ho detto a Flash di recuperare il valore di id che gli passa l' HTML.

Analizziamo il codice

Proprietà

una variabile di tipo stringa con lo stesso nome ( non necessariamente ) della variabile che passo dall' HTML
private var id:String;

Metodi
getHTMLvars();
questo metodo implementa la logica per recuperare la varibile id dall' HTML
una variabile di tipo stringa che userò in un ciclo for in
var value:String;
una variabile di tipo Object a cui assegno la proprietà parameters del LoaderInfo della root di main.fla
var obj:Object=LoaderInfo(root.loaderInfo).parameters;
con un ciclo for in controllo se c'è una stringa nell' oggetto obj
for (value in obj)
{
assegno alla proprietà id un valore forzato a stringa pari ad una proprietà fittizia che recupero da obj ( potremmo anche vederlo come obj.value ma Flash CS3 non lo accetta )
id=String(obj[value]);
assegno il valore della proprietà id come testo di un campo di testo in modo da avere la certezza che Flash vede quella variabile passata dall' HTML
try_txt.text=id;
}

Chiaramente ho aggiunto il campo di testo solo per fini didattici, in altro caso una volta recuperato il valore della varibile id dell' HTML e assegnato alla proprietà id di Main.as, siamo in grado di sfruttare appunto tale proprietà per tutta la nostra applicazione Flash.

Alla prossima & stay tuned !
__________________

 


I recommend: Essential Actionscript 3.0

- Non rispondo ai messaggi privati con domande tecniche. Apri una discussione sul forum !
- I do not reply technicians pvt messages. Open a thread !
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #2 (permalink)  
Old 07-11-07, 15:03
Member
 
Join Date: Sep 2007
Posts: 52
Rep Power: 2
graf1c001 is on a distinguished road
Re: Passare variabili da HTML a Flash CS3

Scusa Flep, quale è l'utilità di questo tutorial, sento che potrebbe servirmi ma non riesco ad accostarlo a nessuna funzione.
Ciao.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #3 (permalink)  
Old 07-11-07, 15:11
Administrator
 
Join Date: Jul 2007
Location: Cesena
Posts: 4,486
Rep Power: 6
Flep is on a distinguished road
Re: Passare variabili da HTML a Flash CS3

Ti faccio un esempio:
supponiamo che hai un portale in PHP.
Vorresti che in ogni pagina del portale ci sia un SWF che carica un' immagine diversa in base alla sezione del portale.
passi un numero all' SWF dalla pagina del portale e l' SWF in base a quel numero carica la rispettiva immagine.
__________________

 


I recommend: Essential Actionscript 3.0

- Non rispondo ai messaggi privati con domande tecniche. Apri una discussione sul forum !
- I do not reply technicians pvt messages. Open a thread !
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #4 (permalink)  
Old 24-11-07, 17:26
Mighty Gorgon's Avatar
Junior Member
 
Join Date: Nov 2007
Location: Borgo San Michele
Posts: 15
Rep Power: 0
Mighty Gorgon is on a distinguished road
Re: Passare variabili da HTML a Flash CS3

Grazie per questo tutorial, è molto utile per chi come me cerca di far interagire PHP e Flash.

Ti consiglierei di aggiungere tra i tag GET VARS e Query String, perché ad una prima ricerca con queste parole mi era sfuggito.

Comunque tutorial ottimo.
__________________
? Luca ?
Try Icy Phoenix CMS
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #5 (permalink)  
Old 22-01-08, 12:01
Junior Member
 
Join Date: Aug 2007
Posts: 20
Rep Power: 0
markuspedro is on a distinguished road
Re: Passare variabili da HTML a Flash CS3

Utilissimo, è quello che cercavo,
ma come faccio a leggere più variabili dall'html?

supponiamo che oltre ad id voglia aggiungerne degli altri e poi stamparli da swf a video.
come posso fare?

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

Flash Multi Gallery
  #6 (permalink)  
Old 23-01-08, 07:05
Administrator
 
Join Date: Jul 2007
Location: Cesena
Posts: 4,486
Rep Power: 6
Flep is on a distinguished road
Re: Passare variabili da HTML a Flash CS3

Ciao

In questo modo passi più valori:
HTML Code:
<!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>html vars to flash CS3</title>
<script src="Scripts/AC_RunActiveContent.js" type="text/javascript"></script>
</head>

<body>
<script type="text/javascript">
AC_FL_RunContent( 'codebase','http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0','width','300','height','150','src','main','quality','high','pluginspage','http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash','flashvars','id=444&ir=888','movie','main' ); //end AC code
</script><noscript><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0" width="300" height="150">
  <param name="movie" value="main.swf" />
  <param name="quality" value="high" />
  <param name="flashvars" value="id=444&amp;ir=888" />
  <embed src="main.swf" width="300" height="150" quality="high" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" flashvars="id=444&amp;ir=888"></embed>
</object>
</noscript>
</body>
</html>
Actionscript:

Code:
package
{
	import flash.display.MovieClip;
	import flash.text.TextField;
	import flash.display.LoaderInfo;
	
	public class Main extends MovieClip
	{
		private var id:String;
		private var my_array:Array=new Array();
		
		public function Main()
		{
			getHTMLvars();
		}
		
		private function getHTMLvars():void
		{
			var value:String;
			var obj:Object=LoaderInfo(root.loaderInfo).parameters;
			for (value in obj)
			{
				id=String(obj[value]);
				my_array.push(id);
				try_txt.text=my_array.toString();
			}
		}
	}
}
Stamparli a video...cosa intendi ?
__________________

 


I recommend: Essential Actionscript 3.0

- Non rispondo ai messaggi privati con domande tecniche. Apri una discussione sul forum !
- I do not reply technicians pvt messages. Open a thread !
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #7 (permalink)  
Old 23-01-08, 08:16
Junior Member
 
Join Date: Aug 2007
Posts: 20
Rep Power: 0
markuspedro is on a distinguished road
Re: Passare variabili da HTML a Flash CS3

intendevo se era possibile da javascript assegnare dinamicamente i valori richiamando AC_FL_RunContent
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #8 (permalink)  
Old 03-06-08, 12:32
Eugene's Avatar
Member
 
Join Date: Sep 2007
Location: Dagobah
Posts: 97
Rep Power: 2
Eugene is on a distinguished road
Send a message via MSN to Eugene Send a message via Skype™ to Eugene
Riferimento: Passare variabili da HTML a Flash CS3

Grazie Flep per questo tutorial.

L'ho personalizzato in base alle mie esigenze, ma adesso ho un problema.
La variabile passata dalla pagina html corrisponde al nome del documento flv che verrà caricato all'interno del componente FLVPplayback presente nel filmato swf.

Quindi, la document class dichiara quanto segue:

Code:
package
{
 import flash.display.MovieClip;
 import flash.text.TextField;
 import flash.display.LoaderInfo;
 
 public class flVideo extends MovieClip
 {
  private var flvLoad:String;
 
  public function flVideo()
  {
   getHTMLvars();
  }
 
  private function getHTMLvars():void
  {
   var value:String;
   var obj:Object=LoaderInfo(root.loaderInfo).parameters;
   for (value in obj)
   {
    flvLoad=String(obj[value])+".flv";
    try_txt.text=flvLoad;
    flvPlayer.contentPath=flvLoad;
   }
  }
 }
}
Come nel tuo esempio, ho mantenuto il campo di testo diinamico al fine di verificare il corretto caricamento della variabile.

Però, aggiungendo la riga
Code:
flvPlayer.contentPath=flvLoad;
qualcosa non va, producendo il seguente messaggio d'errore:
Code:
 
1119: Accesso a una proprietà non definita contentPath mediante un riferimento con tipo statico fl.video:FLVPlayback.
Probabilmente non ho caricato il package necessario.
Ho fatto qualche ricerca, ma non sono arrivato a nulla.

Dove sbaglio?

Grazie.
__________________
<-- Fare o non fare, non c'è provare -->

http://www.yodastudio.com
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #9 (permalink)  
Old 03-06-08, 13:25
Administrator
 
Join Date: Jul 2007
Location: Cesena
Posts: 4,486
Rep Power: 6
Flep is on a distinguished road
Re: Passare variabili da HTML a Flash CS3

Importa il package :
Code:
import fl.video.FLVPlayback;
__________________

 


I recommend: Essential Actionscript 3.0

- Non rispondo ai messaggi privati con domande tecniche. Apri una discussione sul forum !
- I do not reply technicians pvt messages. Open a thread !
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #10 (permalink)  
Old 03-06-08, 13:37
Eugene's Avatar
Member
 
Join Date: Sep 2007
Location: Dagobah
Posts: 97
Rep Power: 2
Eugene is on a distinguished road
Send a message via MSN to Eugene Send a message via Skype™ to Eugene
Riferimento: Passare variabili da HTML a Flash CS3

Ciao Flep.

Ho fatto quando da te indicato ma ricevo sempre lo stesso messaggio d'errore, e si riferisce proprio alla riga in questione (flvPlayer.contentPath=flvLoad;).

Può essere che faccio qualche altro errore?

Grazie.
__________________
<-- Fare o non fare, non c'è provare -->

http://www.yodastudio.com
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is On
Trackbacks are On
Pingbacks are On
Refbacks are On
Forum Jump

Similar Threads

Thread Thread Starter Forum Replies Last Post
Actionscript 3 Passare variabili per riferimento webbed Actionscript 3.0 base 4 14-10-08 09:49
Actionscript 2 Actionscript non legge le variabili passate da HTML liciobruno Flash CS3 generale 2 04-07-08 13:50
passare variabili con addEventListener Calias Actionscript 3.0 base 4 02-03-08 22:09
variabili html flash markuspedro Actionscript 3.0 avanzato 1 23-01-08 07:15
passare variabili in un swf importato pic-nic Actionscript 3.0 avanzato 1 22-01-08 06:30


All times are GMT. The time now is 11:24.


Powered by vBulletin versione 3.7.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0 RC4
Forum SiteMap


FlepStudio
by Filippo Lughi
P.IVA 03605860406