2011-09-27 85 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)。