Passing variable from Flash to PHP
Possible Duplicate:
Passing variable FROM flash to HTML/php
我正在使用 Flash (Actionscript 3.0) 处理这个项目。基本上,它是一个拖放应用程序。在获得一些用户输入后,我需要使用 PHP 将变量传递给 MySQL 服务器。这是我想出的代码:
actionscript:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | import flash.net.URLVariables; import flash.net.URLRequest; import flash.net.navigateToURL; import flash.events.MouseEvent; var urlVariables:URLVariables = new URLVariables; var pi:pizza=new pizza(); var totalAmt:Number; totalAmt=pi.totalPrice; urlVariables.totalAmount = totalAmt;//"" contains what should be passed //urlVariables.password ="testpass";//""contains what should be passed var urlRequest:URLRequest = new URLRequest("http://172.21.147.103/csc207/bcg2g2/customise.php"); urlRequest.data = urlVariables; sendToURL(urlRequest) |
PHP:
1 2 3 4 5 6 7 8 9 | <?php $total = $_GET["totalAmount"]; //$pass = $_GET["password"]; echo $total; //echo $userName."::".$pass; ?> |
我最终发送给 PHP 的变量是 totalAmount。有人可以就代码是否正确提供一些反馈吗?可以使用用户名和密码访问服务器。是否必须指定?如果是这样,我应该怎么做?
提前谢谢你!
编辑:感谢大家的回复!
我已对代码进行了相应的更改:
导入 flash.net.URLVariables;
导入 flash.net.URLRequest;
导入 flash.net.URLLoader;
导入 flash.net.URLRequestMethod;
导入 flash.net.navigateToURL;
导入 flash.events.MouseEvent;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | var urlString:String ="http://172.21.147.103/csc207/bcg2g2/customise.php"; function Submit():void { var requestVars:URLVariables = new URLVariables(); requestVars.totalAmt= 50; // Dummy data to be sent to php var urlRequest:URLRequest = new URLRequest(); urlRequest.url = urlString; urlRequest.method = URLRequestMethod.GET; urlRequest.data = requestVars; var loader:URLLoader = new URLLoader(); loader.dataFormat = URLLoaderDataFormat.TEXT; loader.addEventListener(Event.COMPLETE, loaderCompleteHandler); sendToURL(urlRequest) try { loader.load(urlRequest); } catch (error:Error) { // Handle Immediate Errors } } function loaderCompleteHandler(e:Event):void { trace(e.target.data); // Response Text } |
价值仍然没有得到反映。我可以检查一下我这样做是否正确吗?我应该将 SWF 文件上传到我正在开发的网站,还有什么我应该做的吗?此外,有关身份验证的信息很有用!但我对是否应该在代码中使用它感到困惑。有什么建议/建议吗?
正如 Hakre 所评论的:查看将变量从 flash 传递到 HTML/php - 不接受的答案就是你想要的(接受的答案发布到 HTML,然后依赖 HTML 发布到 PHP - 你\\'如果您还想传递 cookie,则需要这个,但如果您不这样做,您可以直接调用 PHP)。
至于username/pass,你可以在这里找到答案:Flex 3 - how to support HTTP Authentication URLRequest?;虽然那是Flex,但我相信添加auth的方法是一样的。
我建议使用 load 方法,因为您以后可能需要处理事件。
Ans 因为你想在 php 中获取变量,所以你发出一个 GET 请求,比如:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | var urlString:String ="http://172.21.147.103/csc207/bcg2g2/customise.php"; function Submit():void { var requestVars:URLVariables = new URLVariables(); requestVars.totalAmt= 50; // Dummy data to be sent to php var request:URLRequest = new URLRequest(); request.url = urlString; request.method = URLRequestMethod.GET; request.data = requestVars; var loader:URLLoader = new URLLoader(); loader.dataFormat = URLLoaderDataFormat.TEXT; loader.addEventListener(Event.COMPLETE, loaderCompleteHandler); try { loader.load(request); } catch (error:Error) { // Handle Immediate Errors } } function loaderCompleteHandler(e:Event):void { trace(e.target.data); // Response Text } |