2009-01-15 73 views
2

我正在写一个非常简单的Flash应用程序(AS 2)签署用户的电子邮件通讯;它的工作方式是它使用LoadVars通过用户的电子邮件地址通过POST命中(相同域)的PHP脚本。然后,PHP脚本通过curl将信息传递到另一个域(新闻邮件的URL)以注册用户。在不同的计算机上的Actionscript 2 LoadVars.sendAndLoad问题

到目前为止,这么好,它可以在大约70%的计算机上运行(它在网站上进行测试,而不是在本地进行测试)。但是,在某些计算机上,看起来并没有发生LoadVars.sendAndLoad调用,因为从这些计算机发送的电子邮件地址没有显示在订户列表中。我知道PHP脚本仍然可以在这些计算机上工作,因为我制作了一个准确的HTML表单,它的行为与Flash应用程序完全相同(对同一个变量发布相同的PHP脚本等),并且适用于所有计算机。

下面是相关AS:与Flash客户端设置

submit_btn.onRelease = function(){ 
    submitOutAnimation(); 
    this.enabled = false; 
    var sendvar_lv:LoadVars = new LoadVars(); 
    var loadvar_lv:LoadVars = new LoadVars(); 
    loadvar_lv.onLoad = function(success:Boolean){ 
     gotoAndStop("successful"); 
    } 
    sendvar_lv.email = entryField_mc.myAdd.text; 
    sendvar_lv.sendAndLoad("http://notmyrealdomainname.com/passthrough.php?ck="+new Date().getTime(),loadvar_lv,"POST"); 
} 

难道这是一个安全问题吗?你还有其他建议吗?我一直认为,假设Flash播放器版本相同,在不同计算机上Flash播放的变化不会太大(性能除外),并且这种体验会粉碎幻想...

+0

伙计们 - 感谢您的回复。它必须与域名解析有关 - 那些遇到麻烦的人将会在脚本中列出的www.domainname.com而不是domainname.com。现在好多了! – justinbach 2009-01-15 15:17:29

回答

2

它可能取决于用户是否输入“www”前缀,因为它将被视为单独的子域。如果Flash驻留在同一台服务器上,为什么不放下“http://notmyrealdomainname.com”并使用passthrough.php的相对路径?

相关问题