JQGrid与CakePHP
我有一个总共有三列的JQGrid,并且正在使用框架cakephp填充表。其中一列是id(不可编辑)。另外两个是姓和名。它可以从mysql数据库中读取/添加/删除记录。但是,当我在JQgrid中编辑一个单元格时,它会保存对我正在编辑的单元格所做的更改,但会从另一个单元格中删除数据 例如,如果我有一个id为1的记录,则名为bob,姓为john。我去编辑姓氏并把它改成史密斯。记录现在显示1个鲍勃·史密斯。刷新页面时,记录显示为“1”“Smith”。有什么想法吗?我的控制器中indexedit的代码如下(并提前感谢您):JQGrid与CakePHP,cakephp,jqgrid,Cakephp,Jqgrid,我有一个总共有三列的JQGrid,并且正在使用框架cakephp填充表。其中一列是id(不可编辑)。另外两个是姓和名。它可以从mysql数据库中读取/添加/删除记录。但是,当我在JQgrid中编辑一个单元格时,它会保存对我正在编辑的单元格所做的更改,但会从另一个单元格中删除数据 例如,如果我有一个id为1的记录,则名为bob,姓为john。我去编辑姓氏并把它改成史密斯。记录现在显示1个鲍勃·史密斯。刷新页面时,记录显示为“1”“Smith”。有什么想法吗?我的控制器中indexedit的代码如下
函数索引编辑()
{
//$this->layout='empty';
$this->autoRender=false;
$action=$this->params[“form”][“oper”];
如果($action==“edit”)
{
$id=$this->params[“form”][“id”];
$fName=$this->params[“form”][“firstname”];
$lName=$this->params[“form”][“lastname”];
$this->Apple->save(数组(“id”=>$id,“firstname”=>$fName,“lastname”=>$lName),null);
}
如果($action==“del”)
{
$id=$this->params[“form”][“id”];
//用于多次删除
$exploded_id=exploded(',',$id);
对于($i=0;$iApple->delete($i=id[$i]);
//$fileDir=WWW_ROOT.'img/newsroom/press/'。$id;
//$this->removeFolder($fileDir);
}
//用于多次删除
//单一删除:
//$this->Apple->delete($id);
}
如果($action==“add”)
{
$fName=$this->params[“form”][“firstname”];
$lName=$this->params[“form”][“lastname”];
$this->Apple->save(数组(“firstname”=>$fName,“lastname”=>$lName)、null、null);
}
只是一个想法:尝试将$this->Apple->create();
放在save()
语句之前。好的,您将不得不发布其余的操作代码,可能还有视图的适当部分。运行该create语句是不可能的。仍然会得到完全相同的结果。
function indexedit()
{
//$this->layout= 'empty';
$this->autoRender = false;
$action = $this->params["form"]["oper"];
if($action=="edit")
{
$id=$this->params["form"]["id"];
$fName = $this->params["form"]["firstname"];
$lName = $this->params["form"]["lastname"];
$this->Apple->save(Array("id"=>$id,"firstname"=>$fName,"lastname"=>$lName),null);
}
if($action=="del")
{
$id=$this->params["form"]["id"];
//For Multiple Deletion
$exploded_id = explode(',', $id);
for($i=0;$i<sizeof($exploded_id);$i++)
{
$this->Apple->delete($exploded_id[$i]);
// $fileDir = WWW_ROOT .'img/newsroom/press/'.$id;
// $this->removeFolder($fileDir);
}
//For Multiple Deletion
//single deletion :
//$this->Apple->delete($id);
}
if($action =="add")
{
$fName = $this->params["form"]["firstname"];
$lName = $this->params["form"]["lastname"];
$this->Apple->save(Array("firstname"=>$fName,"lastname"=>$lName),null,null);
}