Zend Framework是否提供了一种优雅的方法来检查数据库中是否已存在用户名?
或者我是使用php if / else和mysql select语句组合编码验证器的唯一选择吗?
答案 0 :(得分:1)
您可以添加一个验证器,如果用户名已经存在,它将检入数据库,如果是,它会注意到用户。我假设你使用Zend_Form和Zend_Db_Table至少有一个默认的db表数据库。
例如:
$element = new Zend_Form_Element_Text('username');
$element->setLabel('User:')
->addValidator(new Zend_Validate_Db_NoRecordExists('user', 'username'))
->setRequired(true);
$this->addElement($element);
您将2个参数传递给验证器,第一个是表名,第二个是您要检查的列。
就是这样!