我试图通过调用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']);
答案 0 :(得分:0)
方法addMultiOption
有两个参数:$ option和$ value,所以不是
$memberid->addMultiOption($row['userid']);
尝试制作类似
的内容$memberid->addMultiOption('user_id', $row['userid']);
其中user_id
是选项元素的名称。
另外,我建议您制作单独的表单和模型,而不是在控制器中编写DB和表单代码
而且,为什么要对数据库进行查询以检索user_id?您可以从auth
对象获取user_id。
$user_id = $user->id;