![](/img/trans.png)
[英]Filling Flash as3 playlist with XML generated from mySQL via php
[英]AS3 and mySQL or XML: Saving user votes on server from a flash movie
我的项目涉及网页中的Flash电影(.swf),用户必须从中选择多个项目,并可以选择竖起或竖起 (投票)每个项目。
到目前为止,我已经使它在应用程序的每次运行中都能正常工作,因为它当前正在从XML文件中加载数据-并且此刻数据仍然是静态的。
我需要使用数据库(mySQL)将这些投票保留在服务器上,以便在重新加载页面时不会忘记投票。
有人做过这种事吗?
我在网上发现的两种主要方法是
哪种方法更好?
对于后一种方法(涉及PHP),当尝试从数据库中检索信息(即读取操作)时,我已经找到了有关如何实现此目的的资源,但是当尝试将信息发送至数据库时(即写操作),我已经能够找到资源。用户投票时需要的操作)。 怎么做?
谢谢!
PHP文件中的某个位置:
if ($action == "vote")
{
$id = $_POST['id'];
$upvotes = $_POST['upvotes'];
$query = "UPDATE `thetable` SET `upvotes` = '$upvotes' WHERE `thetable`.`id` = '$id' LIMIT 1 ;";
$result = mysql_query($query);
}
在ActionsScript中的某个位置:
public function writeToDb(action:String)
{
var loader:URLLoader = new URLLoader();
var postVars:URLVariables = new URLVariables();
var postReq:URLRequest = new URLRequest();
postVars.action = action;
postVars.id = id;
postVars.upvotes = upvotes;
postReq.url = <NAME_OF_PHP_FILE>;
postReq.method = URLRequestMethod.POST;
postReq.data = postVars;
loader.load(postReq);
loader.addEventListener(Event.COMPLETE, onWriteToDbComplete);
}
我不知道任何支持method-1的框架。
我将使用方法2-但与其在Flash中进行查询并将其传递给PHP,还不如在XML中传递相关数据并构造查询。 这样比较安全,因为它不易受到SQL注入攻击的影响。
这个答案有一个从闪存向服务器发送数据的示例-它讨论了ASP,但是PHP(或任何技术)的方法相同-只需更改URL。
在php代码中,您可以从$_POST
(或$_GET
)变量中读取已发送的数据。
$something = $_POST["something"]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.