я есть две таблицы users
и userslog
где я users
содержит id
, username
, email
, gender
и userslog
содержит id
, firstname
, lastname
, designation
и u_id
, который foreign key of users table
.Как вставлять значения формы zend в две таблицы в zend?
мой регистр контроллера
class RegisterController extends Zend_Controller_Action
{
public function init()
{
/* Initialize action controller here */
}
public function indexAction()
{
$form = new Application_Form_register();
$this->view->form = $form;
if($this->getRequest()->isPost())
{
$data = $this->getRequest()->getPost();
}
}
}
мой регистр модель
class Application_Model_DBtable_register extends Zend_Db_Table
{
protected $_name = 'users';
// i have to define two tables here!! how?
}
мой регистр форма Зенд
class Application_Form_register extends Zend_Form
{
public function init()
{
$this->setName('register');
$this->setMethod('post');
$firstname = $this->createElement('text', 'firstname');
$firstname->setLabel('FirstName: ')
->setRequired(true)
->setFilters(array(
'stringTrim','StringToLower'));
$lastname = $this->createElement('text', 'lastname');
$lastname->setLabel('LastName: ')
->setRequired(true)
->setFilters(array(
'stringTrim','StringToLower'));
$email = $this->createElement('text', 'email');
$email->setLabel('Email: ')
->setRequired(true);
$username = $this->createElement('text', 'username');
$username->setLabel('UserName: ')
->setRequired(true)
->setFilters(array(
'stringTrim','StringToLower'));
$password = $this->createElement('password', 'password');
$password->setLabel('Password: ')
->setRequired(true);
$password2 = $this->createElement('password', 'password2');
$password2->setLabel('Confirm Password: ')
->setRequired(true);
$submit = $this->createElement('submit', 'register');
$submit->setLabel('Register')
->setIgnore(true);
$this->addElements(array(
$firstname,
$lastname,
$email,
$username,
$password,
$password2,
$submit));
}
}
как я могу это сделать? мы можем использовать Zend_Auth для аутентификации? если да, то как. пожалуйста, дайте мне пример. Я видел $_dependantTable
и $_referenceMaps
, но я не могу его раскрыть. Я смущен, как это сделать, потому что я не могу определить имя таблицы более одного раза в классе. Я должен вставлять значения в одно и то же время в две разные таблицы.
На самом деле у меня есть план, чтобы добавить '' userlog_id' в user' и когда какой-либо один может обновлять некоторые данные в 'userslog' то новая строка вставляется вместо обновления той же колонке. первичный идентификатор 'userslog' будет вставлен в' userslod_id' в таблице 'users'. –