Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将2个变量传递给Flash?_Flash_Actionscript 3_Flashvars - Fatal编程技术网

如何将2个变量传递给Flash?

如何将2个变量传递给Flash?,flash,actionscript-3,flashvars,Flash,Actionscript 3,Flashvars,首先,我使用的是Flash CS5.5,AS3 我试图将代表姓名和电子邮件地址的变量传递给swf文件。swf使用用户网络摄像头拍摄照片,并将图像发送到save.php进行进一步处理。目前,我有文本字段供用户输入姓名和电子邮件,但我想删除它们,并在幕后添加信息。基本上,这就是我想要实现的目标: 1.Page loads and stores name and email address in variables(index.php). 2.I'd like to pass name and e

首先,我使用的是Flash CS5.5,AS3

我试图将代表姓名和电子邮件地址的变量传递给swf文件。swf使用用户网络摄像头拍摄照片,并将图像发送到save.php进行进一步处理。目前,我有文本字段供用户输入姓名和电子邮件,但我想删除它们,并在幕后添加信息。基本上,这就是我想要实现的目标:

 1.Page loads and stores name and email address in variables(index.php).
 2.I'd like to pass name and email address variables to flash to be included with
   the image the swf sends to a php file for processing (save.php)
 3.Page loads flash content(take_picture.swf) and does it's thing.

我已经使用Zend AMF在类似的情况下实现了这一点,swf从访问数据库的另一个页面返回所有信息。这里有我需要的数据,而无需访问数据库。我尝试过使用FlashVar的许多变体,但都不起作用。我似乎缺少的一件事是,当我发布fla时,Flash发布的html代码中没有
ac\u fl\u runcontent
。而且没有
向html页面添加SWF的最佳/最简单的方法是

只需将脚本添加到文件中

<script type="text/javascript" src="swfobject.js"></script>

然后可以添加所有必要的属性/参数,如下所示:

<script type="text/javascript">
    // <![CDATA[

    var width = 800;
    var height = 600;

    var flashVersion = "9.0.115";

    var movie = "clipping.swf";

    var movieName = "flashMovie";
    var bgColor = "#ffffff";

    var express = "expressInstall.swf";

    var replaceDiv = "flashContent";

    var flashvars = {};
    flashvars.first_name = "<?php echo $first_name; ?>";
    flashvars.email = "<?php echo $email; ?>";

    var params = {};
    params.bgcolor = bgColor;
    params.menu = "false";
    params.scale = "noscale";
    params.allowFullScreen = "true";
    params.allowScriptAccess = "always";

    var attributes = {};
    attributes.id = movieName;

    swfobject.embedSWF(movie, replaceDiv, width, height, flashVersion, express, flashvars, params, attributes);


  // ]]>
</script>

// 

我认为这不会让人混淆,因为编辑嵌入和对象标记时,您只需更改一次属性,其余的由SWFObject完成。绝对值得一看…

将SWF添加到html页面的最佳/最简单方法是

只需将脚本添加到文件中

<script type="text/javascript" src="swfobject.js"></script>

然后可以添加所有必要的属性/参数,如下所示:

<script type="text/javascript">
    // <![CDATA[

    var width = 800;
    var height = 600;

    var flashVersion = "9.0.115";

    var movie = "clipping.swf";

    var movieName = "flashMovie";
    var bgColor = "#ffffff";

    var express = "expressInstall.swf";

    var replaceDiv = "flashContent";

    var flashvars = {};
    flashvars.first_name = "<?php echo $first_name; ?>";
    flashvars.email = "<?php echo $email; ?>";

    var params = {};
    params.bgcolor = bgColor;
    params.menu = "false";
    params.scale = "noscale";
    params.allowFullScreen = "true";
    params.allowScriptAccess = "always";

    var attributes = {};
    attributes.id = movieName;

    swfobject.embedSWF(movie, replaceDiv, width, height, flashVersion, express, flashvars, params, attributes);


  // ]]>
</script>

// 

我认为这不会让人混淆,因为编辑嵌入和对象标记时,您只需更改一次属性,其余的由SWFObject完成。绝对值得一看……

这里有一些简单的东西可以给你一个想法:

嵌入:

<object width="800" height="600">
    <param name="flashvars" value="first_name=blah&email=blah" />
    <embed src="clipping.swf?first_name=blah&email=blah" width="800" height="600" />
</object>

这里有一些简单的东西可以给你一个想法:

嵌入:

<object width="800" height="600">
    <param name="flashvars" value="first_name=blah&email=blah" />
    <embed src="clipping.swf?first_name=blah&email=blah" width="800" height="600" />
</object>

看看这个你差点就明白了Hanks,@Chris,我看了那页,我真的看不出代码有什么不同。我在html中尝试了
FlashVars
“FlashVars”
。尝试使用
标记
而不是回显变量。将其更改为firstname而不是first_name,因为文本输入框具有相同的名称,没有帮助。除非我使用
first\u name.text=Mark
否则我只会在swf中得到
undefined
。我迷路了。看看这个你差点就明白了汉克斯,@Chris,我看了那页,我真的看不出代码有什么不同。我在html中尝试了
FlashVars
“FlashVars”
。尝试使用
标记
而不是回显变量。将其更改为firstname而不是first_name,因为文本输入框具有相同的名称,没有帮助。除非我使用
first\u name.text=Mark
否则我只会在swf中得到
undefined
。我迷路了。这是我唯一能让它识别变量的方法。其他的一切都让我无法确定。谢谢@marty!这是我唯一能让它识别变量的方法。其他的一切都让我无法确定。谢谢@marty!
var parsed:Object = root.loaderInfo.parameters;

trace(
    parsed.first_name,
    parsed.email
);