2013-02-23 115 views
1

我有一個看起來像這樣的php文件。如何在php和flash之間進行通信

<?php 
session_start(); 

$_SESSION['username']= ________;//Get data from swf file 
$_SESSION['password']=_________;//Get data from swf file 
?> 

<!------EMBEDDING SWF FILE---> 
<html> 
    <body> 
     <div id="flashContent"> 
      <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="1024" height="600" id="indexFLA" align="middle"> 
       <param name="movie" value="indexFLA.swf" /> 
       <param name="quality" value="high" /> 
       <param name="bgcolor" value="#ffffff" /> 
       <param name="play" value="true" /> 
       <param name="loop" value="true" /> 
       <param name="wmode" value="window" /> 
       <param name="scale" value="showall" /> 
       <param name="menu" value="true" /> 
       <param name="devicefont" value="false" /> 
       <param name="salign" value="" /> 
       <param name="allowScriptAccess" value="sameDomain" /> 
        <a href="http://www.adobe.com/go/getflash"> 
         <img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /> 
        </a> 
      </object> 
     </div> 
    </body> 
</html> 

現在我想使用嵌入式閃存文件中的actionscript3設置$_SESSION[]變量。

我知道,你可以使用URLRequest("file.php")與外部PHP進行溝通,但我不知道如何將工作與PHP的swf文件本身溝通是英寸

我將如何做到這一點?

謝謝

+0

你試過flash vars:http://helpx.adobe.com/flash/kb/pass-variables-swfs-flashvars.html – psu 2013-02-23 11:28:37

回答

2

您的Flash文件不在PHP :)。您只需將該對象嵌入到由PHP打印的HTML代碼中。現在

,至於閃光燈和PHP之間的溝通:

基本上:通過加載頁面(或者與正在發送或POST數據被打印出來適當的內容)

傳遞一個變量此外,您絕對不應該通過簡單地使用flashvars(也就是將其嵌入HTML代碼中,像您所問)那樣傳遞敏感數據(如用戶名和密碼) - 同樣,您也可以在屏幕上進行打印。這完全不安全。您應該在代碼執行期間傳遞加密數據(或更好:只有校驗和)。不是任何知道如何查看網頁源代碼的人都可以閱讀的方式。

+0

你是什麼意思我的flash文件不是在php中?你的意思是說,當我使用'URLRequest()'加載'thisFile.php'時,我不會把所有的HTML代碼都恢復到閃存中,而只會在''內打印出來。 – 2013-02-23 11:45:10

+0

@AnkurSharma我的意思是你使用HTML將Flash嵌入到網頁中。除了負責打印HTML代碼之外,PHP沒有任何東西可以處理它。至於獲取HTML代碼 - 使用URLRequest,您可以傳遞多個變量。因此,傳遞一個var「flash」=「1」,並在PHP中檢查是否存在'$ _REQUEST ['flash'] == 1',如果是這樣,則只打印響應並且不打印任何HTML。 – MarcinWolny 2013-02-23 11:49:04

+0

另外我真的很希望你沒有在HTML代碼中間隨意使用你的'<?php',因爲這是你在處理PHP文件時可以做的最糟糕的事情之一。如果你有PHP文件 - 讓它控制整個內容輸出。不要在HTML內容中使用php。這在許多方面都是錯誤的。你剛剛發現的一個 - 你無法控制在php開始之前打印出的內容。 – MarcinWolny 2013-02-23 11:50:57

相關問題