Please hold on, I would send another mail in a while.
-abdul
On 3/6/06, Abdul Qabiz <[EMAIL PROTECTED]> wrote:
Hi,
I wrote a somple QueryString class in AS3, that would get you parameters passed to HTML wrapper.
Usage is simple:
Suppose url is: http://server/page.html?param1=10
AS code:
import com.abdulqabiz.utils.QueryString;
function onAppInit()
{var qs:QueryString = new QueryString();}
trace(qs.param1);
Please find the attached zip file. Or see code below:-
##QueryStringSample.html - HTML Wrapper##
<html>
<head>
<title>Query String Sample</title>
</head>
<body>
<!-- Using FlashObject from http://blog.deconcept.com/flashobject/ -->
<script type="text/_javascript_" src=""> <div id="flashcontent">
This text is replaced by the Flash movie.
</div>
<script type="text/_javascript_">
var fo = new FlashObject("QueryStringSample.swf","mymovie", "100%", "100%", "8.5", "#336699");
fo.write("flashcontent");
</script>
</body>
</html>
##QueryStringSample.mxml - Sample MXML using Class##
<mx:Application xmlns:mx=" http://www.macromedia.com/2005/mxml" creationComplete="initVars()">
<mx:Script><![CDATA[
import com.abdulqabiz.utils.QueryString;
// Declare bindable properties in Application scope.
[Bindable]
public var myName:String;
[Bindable]
public var myHometown:String;
private var qs:QueryString;
// Assign values to new properties.
private function initVars():void {
qs = new QueryString();
name_lbl.text = qs.parameters.myName;
homeTown_lbl.text = qs.parameters.myHomeTown;
}
]]></mx:Script>
<mx:VBox>
<mx:HBox>
<mx:Label text="Name: "/>
<mx:Label id="name_lbl" fontWeight="bold"/>
</mx:HBox>
<mx:HBox>
<mx:Label text="Hometown: "/>
<mx:Label id="homeTown_lbl" fontWeight="bold"/>
</mx:HBox>
</mx:VBox>
</mx:Application>
##QueryString.as - The class##
package com.abdulqabiz.utils
{
import flash.external.*;
import flash.util.trace;
public class QueryString extends Proxy
{
private var __queryString:String;
private var __all:String;
private var __params:Object;
public function get queryString():String
{
return __queryString;
}
public function get url():String
{
return __all;
}
public function get parameters():Object
{
return __params;
}
public function QueryString()
{
readQueryString();
}
private function readQueryString():void
{
__params = {};
try
{
_url = ExternalInterface.call("window.location");
_queryString = ExternalInterface.call("window.location.search.substring", 1);
//trace(_queryString);
if(_queryString)
{
var params:Array = _queryString.split('&');
var length:uint = params.length;
for (var i:uint=0,index:int=-1; i<length; i++)
{
var kvPair:String = params[i];
if((index = kvPair.indexOf("=")) > 0)
{
var key:String = kvPair.substring(0,index);
var value:String = kvPair.substring(index+1);
__params[key] = value;
}
}
}
}catch(e:Error) { trace("Some error occured. ExternalInterface doesn't work in Standalone player."); }
}
}
}
This is quick and dirty code. I initialyl wrote the entire class using Proxy, so that you can access properties over it (but data is stored in a variable inside the class). But for simplicity I removed things...
Things, that are not done:
* Detect if some variables are passed via FlashVars also and merge parameters
* Error handling
* Testing in different browsers and under different security sandbox cases.
These can be done easily...So I am not doing it :)
-abdulOn 3/6/06, Abdul Qabiz <[EMAIL PROTECTED] > wrote:You mean, if you try to pass variables to a html page that embeds the SWF?
http://myserver/myflexapp.html?foo=bar
I think, then you can use _javascript_ to extract query-string variables and pass it to SWF using ExternalInterface or using flashvars (if your embedding SWF using JS itself).
-abdulOn 3/6/06, yaagcur <[EMAIL PROTECTED]> wrote:http://livedocs.macromedia.com/flex/20beta1/docs/00001300.html
covers this topic
However, although it works if you pass the URL as a .swf, if you try
.html (which is presumably what you want) then it fails
Hope someone can explain how to do this in Flex 2.0 as it would be
a great feature
Andy Clark
--- In flexcoders@yahoogroups.com, "Gordon Smith" <[EMAIL PROTECTED]> wrote:
>
> In Flex 2, the Application instance has a parameters property with
> name/value pairs for the URL parameters and FlashVars.
>
>
>
> So in an Application script you would just access parameters.number and
> it would be 3.
>
>
>
> From other scripts, you would use
> Application.application.parameters.number .
>
>
>
> - Gordon
>
>
>
> ________________________________
>
> From: flexcoders@yahoogroups.com [mailto: flexcoders@yahoogroups.com] On
> Behalf Of JesterXL
> Sent: Thursday, March 02, 2006 2:55 PM
> To: flexcoders@yahoogroups.com
> Subject: Re: [flexcoders] Flex and URL variables
>
>
>
> Flex 1.5 or 2?
>
>
>
> ----- Original Message -----
>
> From: Jonathan Miranda <mailto: jmiranda@...>
>
> To: flexcoders@yahoogroups.com
>
> Sent: Thursday, March 02, 2006 5:49 PM
>
> Subject: [flexcoders] Flex and URL variables
>
>
>
> Alright, I've done this with Flash before but I'm wondering how similar
> it is.
>
> Let's say I start my app @ http://mysite.com/index.mxml?number=3
>
> What's the easiest way to get that 3 into a variable in Flex? Using
> FlashVars in the embed/object tags and then somehow do
> mx.core.application.Application.number as my variable?
>
> _________________________________________
>
> Jonathan Miranda
>
> Flexible Master of the Web
>
> "Try not to become a man of success, but a man of value." - Albert
> Einstein
>
> HealthGrades < http://www.healthgrades.com/> : Guiding America to Better
> Healthcare(tm)
>
> NASDAQ: HGRD
>
> w (720) 963-3832
>
> c (707) 761-0868
>
> [EMAIL PROTECTED]
>
> _________________________________________
>
> The message contains confidential and/or legally privileged information
> and is intended for use only by the indicated addressee. If you are not
> the named addressee you should not disseminate, distribute, or copy this
> e-mail. Please notify the sender immediately by e-mail if you have
> received this e-mail by mistake and delete this e-mail from your system.
> E-mail transmissions cannot be guaranteed to be secure or error-free as
> information could be intercepted, corrupted, lost, destroyed,arrive late
> or incomplete, or contain viruses. The sender therefore does not accept
> liability for any errors or omissions in the contents of this message
> which arise as a result of e-mail transmission. If verification is
> required please request a hard-copy version.
>
>
>
>
>
> --
> Flexcoders Mailing List
> FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
> Search Archives:
> http://www.mail-archive.com/flexcoders%40yahoogroups.com
>
>
>
>
> SPONSORED LINKS
>
> Web site design development
> <http://groups.yahoo.com/gads?t=ms&k=Web+site+design+development&w1=Web+
> site+design+development&w2=Computer+software+development&w3=Software+des
> ign+and+development&w4=Macromedia+flex&w5=Software+development+best+prac
> tice&c=5&s=166&.sig=L-4QTvxB_quFDtMyhrQaHQ>
>
> Computer software development
> < http://groups.yahoo.com/gads?t=ms&k=Computer+software+development&w1=We
> b+site+design+development&w2=Computer+software+development&w3=Software+d
> esign+and+development&w4=Macromedia+flex&w5=Software+development+best+pr
> actice&c=5&s=166&.sig=lvQjSRfQDfWudJSe1lLjHw>
>
> Software design and development
> < http://groups.yahoo.com/gads?t=ms&k=Software+design+and+development&w1=
> Web+site+design+development&w2=Computer+software+development&w3=Software
> +design+and+development&w4=Macromedia+flex&w5=Software+development+best+
> practice&c=5&s=166&.sig=1pMBCdo3DsJbuU9AEmO1oQ>
>
> Macromedia flex
> <http://groups.yahoo.com/gads?t=ms&k=Macromedia+flex&w1=Web+site+design+
> development&w2=Computer+software+development&w3=Software+design+and+deve
> lopment&w4=Macromedia+flex&w5=Software+development+best+practice&c=5&s=1
> 66&.sig=OO6nPIrz7_EpZI36cYzBjw>
>
> Software development best practice
> < http://groups.yahoo.com/gads?t=ms&k=Software+development+best+practice&
> w1=Web+site+design+development&w2=Computer+software+development&w3=Softw
> are+design+and+development&w4=Macromedia+flex&w5=Software+development+be
> st+practice&c=5&s=166&.sig=f89quyyulIDsnABLD6IXIw>
>
>
>
>
>
> ________________________________
>
> YAHOO! GROUPS LINKS
>
>
>
> * Visit your group "flexcoders
> < http://groups.yahoo.com/group/flexcoders> " on the web.
>
> * To unsubscribe from this group, send an email to:
> [EMAIL PROTECTED]
> <mailto:[EMAIL PROTECTED]?subject=Unsubscribe>
>
> * Your use of Yahoo! Groups is subject to the Yahoo! Terms of
> Service <http://docs.yahoo.com/info/terms/> .
>
>
>
> ________________________________
>
--
Flexcoders Mailing List
FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/flexcoders/
<*> To unsubscribe from this group, send an email to:
[EMAIL PROTECTED]
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/
--
Flexcoders Mailing List
FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com
SPONSORED LINKS
Web site design development | Computer software development | Software design and development |
Macromedia flex | Software development best practice |
YAHOO! GROUPS LINKS
- Visit your group "flexcoders" on the web.
- To unsubscribe from this group, send an email to:
[EMAIL PROTECTED]
- Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.