ZEND 框架:无法在单个函数中执行更新和插入
ZEND framwork: unable to perform update and insert in a single function
我是 ZEND 的新手,正在处理现有代码。
我需要编写代码,如果编辑现有数据然后通过 id 将 is_active 更新为 0 并插入新的 data.Both 工作正常但单独更新工作或插入(通过评论其他)。
这是我的代码:
控制器:
class ConfigurationController extends Zend_Controller_Action {
public function myFunction()
{
$data_array = array('id' => $emp_id, 'user_id' => $emp_user_id,
'email' => $emp_email,
'isactive' => '1'
);
$empModel = new Default_Model_emp();//obj of model
$result = $empModel ->updateEmpConfig($data_array); //call model method
}
}
型号:-
class Default_Model_emp extends Zend_Db_Table_Abstract {
protected $_name = 'tbl_emp';
protected $_primary = 'id';
function updateEmpConfig($data)
{
if ($data['id']) {
//remove previous ie isactive = 0
$dataUpdate = array(
'isactive' => 0,
'modified_by' => $data['modified_by'],
'modified' => date("Y-m-d H:i:s")
);
// Update in table
$result = $this->_db->update('tbl_emp', $dataUpdate, array('id = ?' => $data['id']));
}
//insert in table as new entry
$this->insert($data);
$insert_result = $this->getAdapter()->lastInsertId('tbl_emp');
return $insert_result ;
}
这里有什么问题?
我通过分别执行简单的 2 个查询解决了这个问题。
$updateQry=" UPDATE tbl_name SET col=value WHERE where_condition";
$result_update = Zend_Db_Table_Abstract::getDefaultAdapter()->query($updateQry);
$insetQry="INSERT INTO tbl_name". '` (' . implode(',', array_keys($arrayData)) . ") VALUES ( " . implode(',', array_values($arrayData)) . ') ';
$result_insert = Zend_Db_Table_Abstract::getDefaultAdapter()->query($insetQry);
我是 ZEND 的新手,正在处理现有代码。
我需要编写代码,如果编辑现有数据然后通过 id 将 is_active 更新为 0 并插入新的 data.Both 工作正常但单独更新工作或插入(通过评论其他)。
这是我的代码: 控制器:
class ConfigurationController extends Zend_Controller_Action {
public function myFunction()
{
$data_array = array('id' => $emp_id, 'user_id' => $emp_user_id,
'email' => $emp_email,
'isactive' => '1'
);
$empModel = new Default_Model_emp();//obj of model
$result = $empModel ->updateEmpConfig($data_array); //call model method
}
}
型号:-
class Default_Model_emp extends Zend_Db_Table_Abstract {
protected $_name = 'tbl_emp';
protected $_primary = 'id';
function updateEmpConfig($data)
{
if ($data['id']) {
//remove previous ie isactive = 0
$dataUpdate = array(
'isactive' => 0,
'modified_by' => $data['modified_by'],
'modified' => date("Y-m-d H:i:s")
);
// Update in table
$result = $this->_db->update('tbl_emp', $dataUpdate, array('id = ?' => $data['id']));
}
//insert in table as new entry
$this->insert($data);
$insert_result = $this->getAdapter()->lastInsertId('tbl_emp');
return $insert_result ;
}
这里有什么问题?
我通过分别执行简单的 2 个查询解决了这个问题。
$updateQry=" UPDATE tbl_name SET col=value WHERE where_condition";
$result_update = Zend_Db_Table_Abstract::getDefaultAdapter()->query($updateQry);
$insetQry="INSERT INTO tbl_name". '` (' . implode(',', array_keys($arrayData)) . ") VALUES ( " . implode(',', array_values($arrayData)) . ') ';
$result_insert = Zend_Db_Table_Abstract::getDefaultAdapter()->query($insetQry);