我很確定對我的問題有一個非常簡單的修復方法,但我會盡可能詳細地解釋。AS3&MySQL - 將輸出的字符串添加到變量
基本上我使用PHP與MySQL使用GETs將信息發送到我的Flash文件。
使用FlashVars我已經設法得到用戶的id',我可以將我的問題/搜索發送到訪問數據庫並將信息返回到html頁面的PHP腳本。
我想什麼,現在做的就是添加發送回html頁面的變量中閃光的信息。例如:
var usr_name = get_user_name(id) || 'Unknown'; // "Unknown" should just be for offline use.
但這只是返回「未知」
這是使用的功能:
public function get_user_name(usr_id){
loadData('search.php',"quest=name",'usr_id='+usr_id);
}
private function loadData(page_Name='search.php',get1='g1=1',get2='g2=2',get3='g3=3'):void {
var randomParam:String = "?p=" + Math.floor(Math.random() * (10000000));
var create_URL = (URL + page_Name + randomParam + '&'+ get1 + '&' + get2 + '&' + get3) ;
trace(create_URL);
_loader = new URLLoader();
_request = new URLRequest(create_URL);
_request.method = URLRequestMethod.POST;
_loader.addEventListener(Event.COMPLETE, onLoadData);
_loader.addEventListener(IOErrorEvent.IO_ERROR, onDataFiledToLoad);
_loader.addEventListener(IOErrorEvent.NETWORK_ERROR, onDataFiledToLoad);
_loader.addEventListener(IOErrorEvent.VERIFY_ERROR, onDataFiledToLoad);
_loader.addEventListener(IOErrorEvent.DISK_ERROR, onDataFiledToLoad);
_loader.load(_request);
}
public function onLoadData(e:Event):String {
return(e.target.data);
}
這一切似乎都工作正常,它只是當我嘗試做出來的或聲明(||「未知」)我得到這個錯誤:
TypeError: Error #2007: Parameter text must be non-null.
at flash.text::TextField/set text()
at App/frame1()
如果我只是在網頁瀏覽器中輸入網址,我會得到名字。
我不知道爲什麼這是一個這樣的問題。
感謝 禮
因此,這樣的工作,但由於加載和輸出之間有一個延遲抓住未知然後一旦加載改變它的名稱,但它已經到了晚期.. – 2012-04-16 17:47:31
明顯會發生。您正在通過網絡發出請求。它不必太晚。只要確保沒有其他事情開始,直到返回響應。 – loxxy 2012-04-16 18:37:55