2011-08-03 27 views
0

我正在爲Facebook開發一個Flash遊戲,它使用PHP訪問MySQL以存儲用戶遊戲信息。雖然我現在有點卡住了。這是我的場景。Facebook IFrame應用程序問題(Flash,PHP,MySQL)

  1. 用戶登錄到Facebook並啓動應用程序,該應用程序調用index.php並保存我的Flash遊戲。 (工作正常)。
  2. 我使用$ facebook-> getUser();驗證並開始收集用戶信息(也可以正常工作)。
  3. Flash然後將訪問我的服務器上的一個getdata.php文件,該文件將訪問MySql並回顯某些信息(即.fname = John & lname = Doe & age = 25)。

第三步是問題,我會盡我所能來解釋它...

我訪問getdata.php也做了$ facebook->的getUser();身份驗證,但用戶未在該腳本上進行身份驗證,而在IFRAME應用程序中,用戶仍處於身份驗證狀態。我假設它與主頁面在Facebook的IFRAME中有關,並且可能被視爲與Flash嘗試與我的服務器上的getdata.php文件連接時的不同會話。是這樣嗎?任何人都可以幫助我指出正確的方向,我可以如何在IFrame應用程序中使用Flash來訪問服務器上的腳本以檢索變量?

編輯:我應該提到,我使用ActionScript 3的Flash,但我相當確定問題不在於那裏,因爲它將檢索變量,但由於用戶未在服務器上進行身份驗證,那麼它將返回成功= 0。

也想指出,如果我通過我的實際服務器訪問我的Flash遊戲,而不是Facebook,那麼一切運作良好。我認爲這是會話類型問題的另一個原因。

回答

0

這是一個會話問題。您應該嘗試將facebook signed_request或任何可用於構建有效用戶會話的數據傳遞到Flash文件,然後將它們傳回getdata.php,以便用於訪問用戶數據。