0

我试图通过调用Zend_Auth以获取登录用户的用户名来限制下拉菜单中的 1 个选项。代码看起来不错,但它只在下拉菜单中显示 1 个空格。

    $auth= Zend_Auth::getInstance();
    $user= $auth->getIdentity();
    $username   = $user->username;

    $memberid = $this->createElement('select', 'memberid'); //dropdown menu of member name
    $memberid->setLabel('Member Id')
    ->setRequired(true);
    $db_member = new Application_Model_DbTable_Register();

    $select = $db_member->select('userid')
    ->from(array('usertable'))
    ->where('usertable.username = ?', $username);     

    $row = $db_member->fetchRow($select);
    $memberid->addMultiOption($row['userid']);
4

1 回答 1

0

方法addMultiOption有两个参数:$option 和 $value,所以不是

$memberid->addMultiOption($row['userid']);

尝试做类似的东西

$memberid->addMultiOption('user_id', $row['userid']);

user_id选项元素的名称在哪里。

另外我建议您制作单独的表单和模型,而不是在控制器中编写数据库和表单代码

而且,你为什么要查询数据库来检索 user_id?您可以获取 user_id 只是表单auth对象。

$user_id = $user->id;
于 2012-08-08T16:10:01.547 回答