2011-09-27 69 views
0

我想連接到Flex4中的MySql數據庫。我寫了一個PHP類這樣的,flex4與PHP,錯誤參考功能

public function getNames() { 
$stmt = mysqli_prepare($this->connection, 
     "SELECT 
      names.firstname, 
      names.middlename, 
      names.lastname 
     FROM names");  

    $this->throwExceptionOnError(); 

    mysqli_stmt_execute($stmt); 
    $this->throwExceptionOnError(); 

    $rows = array(); 
    mysqli_stmt_bind_result($stmt, $row->firstname, $row->middlename, 
       $row->lastname); 

    while (mysqli_stmt_fetch($stmt)) { 
     $rows[] = $row; 
     $row = new stdClass(); 
     mysqli_stmt_bind_result($stmt, $row->firstname, $row->middlename, 
       $row->lastname); 
    } 

    mysqli_stmt_free_result($stmt); 
    mysqli_close($this->connection); 

    return $rows; 

}

我剛纔拖動和DROP掉一個DataGrid到Flex設計模式。然後使用數據 - >連接到PHP選項,我從webroot選擇文件name.php。然後flex4給出這個錯誤,我不知道它,因爲它產生了各種服務。

Flex現在期待什麼?

protected function dataGrid_creationCompleteHandler(event:FlexEvent):void 
       { 
        getNamesResult.token = name.getNames(); 
       } 

描述資源路徑位置類型 1061:通過與靜態類型字符串的引用調用可能未定義的方法getNames。 flexphp.mxml/flexphp/src line 12 Flex問題

回答

0

因爲PHP函數沒有公開可用,所以如果沒有某種可以與Flex通信的圖層,則無法直接在PHP中調用函數。你應該看看AMFPHPZendPHP,它提供了這個通信層(amf remoting)。