Php 如果zend framework 1.11表中存在,则添加或更新
如果Mysql表中存在数据,我希望更新数据,否则我会添加数据,所以我会执行此脚本,但如果id为,则只添加不更新数据(如果已经存在)Php 如果zend framework 1.11表中存在,则添加或更新,php,zend-framework,model-view-controller,frameworks,Php,Zend Framework,Model View Controller,Frameworks,如果Mysql表中存在数据,我希望更新数据,否则我会添加数据,所以我会执行此脚本,但如果id为,则只添加不更新数据(如果已经存在) public function addUpdateCust(array $data) { if(!empty($data)) { if($this->update($data, array('id = ?' => $data['id'])) > 0 ) { return tr
public function addUpdateCust(array $data)
{
if(!empty($data))
{
if($this->update($data, array('id = ?' => $data['id'])) > 0 )
{
return true;
}
$row = $this->createRow();
//$row->id = $data['id'];
$row->code = $data['code'];
$row->fabname = $data['fabname'];
$row->namecustomer = $data['namecustomer'];
$row->adresse = $data['adresse'];
$row->city = $data['city'];
$row->zipcode = $data['zipcode'];
$row->country = $data['country'];
$row->phone = $data['phone'];
$row->representative = $data['representative'];
$row->idUser = NULL;
//var_dump($row);
try {
return $row->save();
} catch (Exception $e) {
return $e;
}
}
return false;
}
提前感谢您可能应该为此使用try/catch。更新不会像您想象的那样返回true或false
public function addUpdateCust(array $data)
{
if(!empty($data))
{
try{
$this->update($data, array('id = ?' => $data['id']);
} catch (Zend_Exception $e) {
$row = $this->createRow();
//$row->id = $data['id'];
$row->code = $data['code'];
$row->fabname = $data['fabname'];
$row->namecustomer = $data['namecustomer'];
$row->adresse = $data['adresse'];
$row->city = $data['city'];
$row->zipcode = $data['zipcode'];
$row->country = $data['country'];
$row->phone = $data['phone'];
$row->representative = $data['representative'];
$row->idUser = NULL;
//var_dump($row);
try {
return $row->save();
} catch (Exception $e) {
return $e;
}
}
return true;
}
}
请参见您并不是在说不起作用的内容。我们希望你们在提出问题时尽可能多的努力,就像你们希望我们回答一样。这应该是有效的。检查
$data
是否有正确的数据。因此,如果表中存在此id,我希望更新,否则我希望插入添加数据tanhks以帮助我解决问题。如果更新失败(记录不存在),则捕获异常并从中创建。就像我的例子一样。如果你不知道例外情况是什么,那么你可能会陷入困境。我们可以帮忙。不为你这样做。我这样做,但不插入数据,不更新,如我的代码已经可以做添加,但现在当我做这个脚本不做任何事情谢谢你的帮助,你应该聘请一名程序员。我无能为力。我甚至不确定你是否理解我发布的示例。祝你好运我是程序员,我知道很好的例外,但当我做这个脚本,它不适合我提前感谢
public function addUpdateCust(array $data)
{
if(!empty($data))
{
$row = $this->createRow();
//$row->id = $data['id'];
$row->code = $data['code'];
$row->fabname = $data['fabname'];
$row->namecustomer = $data['namecustomer'];
$row->adresse = $data['adresse'];
$row->city = $data['city'];
$row->zipcode = $data['zipcode'];
$row->country = $data['country'];
$row->phone = $data['phone'];
$row->representative = $data['representative'];
$row->idUser = NULL;
//var_dump($row);
try {
return $row->save();
} catch (Zend_Exception $e) {
$this->update($data, array('id = ?' => $data['id']);
}
return true;
}
}