我有一个使用会话的php网站,如果你没有登录就无法访问网页......我希望我的Flash文件也一样,但想要flash看看php网站上是否有有效的会话如果有播放闪光灯,如果没有拒绝访问..!
如果他们下载了flash文件并且没有登录到PHP网站就无法播放该文件。
$member = "{$_SESSION['SESS_MEMBER_ID']}";
//Start session
session_start();
//Check whether the session variable SESS_MEMBER_ID is present or not
if(!isset($_SESSION['SESS_MEMBER_ID']) || (trim($_SESSION['SESS_MEMBER_ID']) == '')) {
header("location: access-denied.php");
exit();
}
答案 0 :(得分:2)
创建一个PHP页面,根据设置的用户会话返回一些url编码变量。
if(!isset($_SESSION['SESS_MEMBER_ID']) || (trim($_SESSION['SESS_MEMBER_ID']) == '')) {
echo "&isLoggedIn=0";
}else{
echo "&isLoggedIn=1";
}
将Flash文件添加到舞台后,使用URLLoader加载页面并根据其输出确定要执行的操作:
private function handleAddedToStage(e:Event):void
{
var loader:URLLoader = new URLLoader();
loader.addEventListener(Event.COMPLETE,handleLoaded);
loader.dataFormat = URLLoaderDataFormat.VARIABLES;
loader.load(new URLRequest('http://my.domain.com/isloggedin.php'));
}
private function handleLoaded(e:Event):void
{
var loader = e.target as URLLoader;
if(loader.data.isLoggedIn == 1)
{
// Run animation
runAnimation();
}
else
{
// show access denied
showAccessDenied();
}
}
答案 1 :(得分:0)
最近几乎不赞成使用Actionscript 2.0,所以我的AS2有点生疏,但希望这可以让你朝着正确的方向前进:
private function applicationReady():Void
{
var loader:LoadVars = new LoadVars();
loader.onLoad = handleLoaded;
loader.load("http://my.domain.com/isloggedin.php");
}
private function handleLoaded(success:Boolean)
{
if( success && this.isLoggedIn==1)
{
// Run animation
runAnimation();
}
else
{
// show access denied
showAccessDenied();
}
}