Zend framework ZendFramework-如何获取页面ID名称

Zend framework ZendFramework-如何获取页面ID名称,zend-framework,zend-form,zend-db-table,Zend Framework,Zend Form,Zend Db Table,我有一个表*sitepage\u manageadmins*,其中包含:user\u id,page\u id。 还有另一个表*sitepage\u pages*,其中包含页面id、标题 我试图呈现为Zend_表单中的下拉选择列表,该用户是相关页面id的管理员 这是我的密码: $this->view->owner_id = $viewer_id = $viewer->getIdentity(); // get $viewer $adminpages = Engine_Api:

我有一个表*sitepage\u manageadmins*,其中包含:user\u id,page\u id。 还有另一个表*sitepage\u pages*,其中包含页面id、标题

我试图呈现为Zend_表单中的下拉选择列表,该用户是相关页面id的管理员

这是我的密码:

$this->view->owner_id = $viewer_id = $viewer->getIdentity();  // get $viewer
$adminpages = Engine_Api::_()->getDbtable('manageadmins', 'sitepage')->getManageAdminPages($viewer_id); // get viewer page_id's where is admin
获取页面id作为下拉列表:

$ids = array ( 0 => '-- Select --');
    foreach ($adminpages as $adminpage) {
        $ids[] = $adminpage->page_id;
    }
呈现下拉列表

$this->addElement('select', 'page_id', array (
                'label' => 'Page where I'm Admin',
                'multioptions' => $ids,
)); 
目前,im只将页码作为下拉列表呈现。我想从特定的页面ID呈现标题

有什么好主意吗?
谢谢

这是因为您只将id放入$ids[]数组中。在这种情况下,多选项数组应该是键值对,即page\u id作为键,page\u title作为值。 foreach$adminpages作为$adminpages{ $ids[$adminpage->page\u id]=$adminpage->page\u标题; }

关于我从数据库的连接,我的表没有字段页标题,所以如果我这样连接,我会出错。我认为解决方案是加入其中,sitepage_页面具有来自manageadmins查看器ID的页面ID,并从该ID获取页面标题。很抱歉。。我以为你已经在getManageAdminPages中加入了它。与两个表中的页面id混淆了$select=$this->select->from'sitepage\u manageadmins'->joinLeftarray'page'=>'sitepage\u pages',page.page\u id='sitepage\u manageadmins.page\u id',array'page.page\u id AS pageid','title AS page\u title'->其中'user\u id=?',viewer id;我在“page.page\u id='sitepage\u manageadmins.page\u id'上收到PHP错误。您可以指定错误吗。您可以通过die$select查看查询