Re: [問題] flex取php運算結果
※ 引述《chenlifu (離)》之銘言:
: 請問flex中AS可以吃 PHP已經運算出來的結果嗎??
: 因為本來已經有寫好PHP的運算報表~
: 想說可以把結果丟回FLEX做漂亮的呈現嗎?
: 還是必須在AS中運算才可以?
flex與PHP端資料處理有兩種情況
主要會利用到URLLoader和URLRequest方法
第一種:單純接收從PHP傳送過來的變數
//建立URLLoader與URLRequest的連結
private function initial(event:Event):void
{
var loader:URLLoader = new URLLoader;
loader.addEventListener(Event.COMPLETE,show);//當資料載入完成觸發show函數
loader.load(new URLRequest("http://127.0.0.1/test.php"));
}
//從資料庫接收的變數(假設是字串)載入到flex的文字欄位
private function show(event:Event):void
{
var loader:URLLoader = URLLoader(event.target);
textArea.htmlText = loader.data;//flex接收到PHP端echo的字串,丟給textArea顯示出來
}
php檔要寫的東西:
//經過一番處理後,看你自己要取什麼資料
.........
.....
.....
//直接echo出變數裡的資料,flex端就會全部接收
若是字串的話,就是整串文字丟給flex裡的data去接收。
echo "$data[0]";
----------------------我是分隔線------------------------
第二種:flex端也要傳變數到PHP,讓PHP從資料庫抓取相對應的資料再傳回flex端
此情形有點不同於第一種情況
當flex的變數需要傳送過去時,需要利用到URLVariables(用法請參考下面)
//建立URLLoader與URLRequest的連結
private function initial(event:Event):void
{
//要接收變數處理的PHP網頁
var request:URLRequest = new URLRequest("http://127.0.0.1/test.php");
//這裡是flex裡的變數要傳到php去處理
var variables:URLVariables = new URLVariables();//宣告一個URLVariables的變數
variables.ID1 = flex裡的變數一;
variables.ID2 = flex裡的變數二;
//ID1和ID2可以自行任意取名,但PHP端需要有相對應的變數
request.data = variables;
var loaderWord:URLLoader = new URLLoader();//建立URLLoader負責傳送變數過去
loaderWord.dataFormat = URLLoaderDataFormat.VARIABLES;
loaderWord.addEventListener(Event.COMPLETE,show);//當資料載入完成觸發show函數
loaderWord.load(requestWord);
}
//從資料庫接收的變數(假設是字串)載入到flex裡,並且讓變數去接收
public function show(event:Event):void
{
var loader:URLLoader = URLLoader(event.target);
info1 = loader.data.Output1;//PHP echo出的Output1變數,丟給info1接收
info2 = loader.data.Output2;//PHP echo出的Output2變數,丟給info2接收
}
php檔要寫的東西:
//flex傳過來的變數,在get裡頭要一樣
$num1 = $_GET["ID1"];
$num2 = $_GET["ID2"];
//經過一番處理後,看你自己要取什麼資料
.........
.....
.....
//echo出的變數讓flex端接收
//注意:1.變數與變數之間要用&符號分隔
2.第一個變數前面不需要加&符號
echo "Output1=$data[0]";
echo "&Output2=$data[1]";
以上就是flex與PHP端資料存取程式寫法,看看吧!有問題再問。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.115.135.106
※ 編輯: cloudfly 來自: 140.115.135.106 (12/24 16:12)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 3 篇):