2010-06-18 63 views
2

我想使用Actionscript 3在Flash中进行投票/投票应用程序。有什么方法可以生成对每个用户都是唯一的特定ID吗?有什么方法可以在Flash/Actionscript 3中识别唯一的用户吗?

我能想到的唯一的其他选择是使用IP地址,这在许多情况下(大学校园,共享Internet访问等)并不理想。

每次运行在同一台PC上时,它的编号必须相同,但每个用户的编号不同。

+0

生成某种独特的id(如guid),并将其存储在用户的计算机上。 http://www.flashkit.com/tutorials/Actionscripting/Shared_O-Philipp_-1004/more2.php这几乎是每个网络会话cookie的工作原理。 – 2010-06-18 01:38:04

+0

可以清除Cookies。我正在寻找一种不太容易规避的解决方案。 – Roderick 2010-06-18 01:51:52

回答

2

你有两个选择:

1)远程共享对象,这是一种奇特的方式说一个Flash cookie,它每次都会记住的浏览器。或者,您可以设置某种后端登录系统(因为您希望每个用户都是独一无二的,即使是在同一台计算机上,这听起来也是您必须执行的操作)。这不仅仅是闪存 - 您需要与PHP等服务器端脚本语言(集成非常容易与AMFPHP或ZendAMF集成,我相信您可以在http://www.gotoandlearn.com上找到一些教程)并处理您的用户信息。

你将不得不将这些连接到某种登录 - 必须有一种方法让用户识别自己,或者整个事情是毫无意义的。

如果我是你,我会先登录一个登录屏幕,绑定到PHP后端,并使用cookie记住你有人登录 - 但给他们注销的选项。然后,您只需将登录用户与某种唯一键(如MySQL数据库中的用户索引)关联起来,然后就可以完成设置。

取决于您对闪光灯以外的技术的使用感觉如何,可能听起来简单或复杂,但它确实不会让您花太长时间。如果你对PHP或MySQL一无所知,你可以谷歌“PHP用户登录”,这应该让你开始。如果您有任何具体问题,请告诉我!

+0

我想我要结合使用IP地址和Flash Cookie。可以像常规cookie一样“清除”Cookie? – Roderick 2010-06-18 02:01:03

+0

我认为你的意思是一个*本地*共享对象。此外,本地共享对象不是由浏览器管理,而是由播放器管理。因此,您可以使用不同的浏览器访问相同的swf,但LSO数据将在它们之间共享(只要您通过同一个域访问它们即可)。 – 2010-06-18 02:01:05

+0

@VGambit。不,他们不受巴罗斯管理。用户可以手动删除这些文件(但大多数用户不知道如何首先找到它们)。我认为有一些插件可以很容易地清除LSOs,但我从来没有真正使用过。 – 2010-06-18 02:03:14

相关问题