2011-09-17 29 views
0

我在ASP.Net中有一個登錄表單,當用戶登錄時,他將跳轉到另一個包含Flash遊戲鏈接的頁面。使用動作腳本3.0從asp.net調用會話值到Flash

當用戶點擊Flash遊戲鏈接時,Flash遊戲會從ASP.Net調用會話並在歡迎屏幕上顯示swf文件中用戶的名稱,如果他將高分保存爲高分。

下次登錄時,他的高分會顯示在屏幕上。

主要問題是如何從asp.net調用會話。

回答

0

您需要在Flash ActionScript 3.0中使用URLLoader,只需創建單獨的aspx頁面以便在Flash中檢索會話變量。欲瞭解更多信息,請點擊這裏link

不知道aspx,但這裏是PHP的示例。

ActionScript 3.0中

var current_session_id = stage.loaderInfo.parameters.session_id; // retrieve current session id from FlashVars. 

var urlRequest:URLRequest = new URLRequest("your aspx page url"); 
var urlVariable:URLVariables = new URLVariables(); 

var urlLoader:URLLoader = new URLLoader(); 
urlLoader.dataFormat = URLLoaderDataFormat.VARIABLES; 

urlLoader.addEventListener(Event.COMPLETE, urlLoader_complete); 


btn_submit.addEventListener(MouseEvent.CLICK, btn_submit_click); 
function btn_submit_click(e:Event) 
{ 

     urlVariable.session_id = current_session_id; 
     urlRequest.data = urlVariable; 

     urlLoader.load(urlRequest); 
} 

function urlLoader_complete(e:Event) 
{ 
     trace(e.target.data.test_var); // will get session variable. 
} 

PHP代碼

<?php 

    session_id($_REQUEST['session_id']); 
    session_start(); 

    echo "test_var=".$_SESSION['your session varialbe']; 
?> 

注意:您需要使用您的aspx頁面URL一起傳遞電流SESSION_ID。否則您的後端aspx頁面會生成新的會話ID,您將無法獲得正確的會話。