//个人档案
public function geren(){
if(!isset($_SESSION[C("USER_AUTH_KEY")])){
$msg="请登录";
}else{
$msg=$_SESSION[C("USER_AUTH_KEY")];
}
$this->assign('msg',$msg);
//==================获取登录信息============================
$gr=M("admin");
$baide=$gr->select();
$this->assign("baide",$baide);
$this->assign("title",'极限互动办公自动化系统');
$this->display();
}
public function upgr(){//修改edit 内容
header("Content-Type:text/html; charset=utf-8");
$Form = M("admin");
$data['id'] = $_GET['id'];
$data['name'] = $_GET['name'];
$data['password'] = $_GET['password'];
$data['sex'] = $_GET['sex'];
$data['bumen'] = $_GET['bumen'];
$data['TEL'] = $_GET['TEL'];
$data['QQ'] = $_GET['QQ'];
$data['email'] = $_GET['email'];
$data['dizhi'] = $_GET['dizhi'];
$data['img'] = $_GET['img'];
if($data){
$upgr=$Form->where('id='.$data['id'])->save($data);
if($upgr){
echo "<script type='text/javascript'>alert('更新成功');window.navigate('geren');</script>";
}else{
echo "<script type='text/javascript'>alert('更新失败');window.navigate('geren');</script>";
}
}
}获取HTML 信息<volist name="baide" id="baide">
<tr>
<td>{$baide.name}</td>
<td>{$baide.sex}</td>
<td>{$baide.TEL}</td>
<td>{$baide.QQ}</td>
<td>{$baide.email}</td>
<td>{$baide.dizhi}</td>
<td><img src="../../{$baide.img}" width="25" height="30"/></td>
<td>
<a href="__URL__/upgr/id/{$baide.id}">编辑档案</a>
</td>
</tr>
</volist>我要更新的内容<volist name="baide" id="baide">
<form action="__URL__/upgr" method="get" name="geren">
<table width="200" border="1">
<tr>
<td width="44">姓名</td>
<td width="140"><input type="text" name="name" value="{$baide.name}" /></td>
</tr>
<tr>
<td width="44">密码</td>
<td width="140"><input type="text" name="password" value="{$baide.password}" /></td>
</tr>
<tr>
<td>性别</td>
<td><input type="text" name="sex" value="{$baide.sex}" /></td>
</tr>
<tr>
<td>公司职位</td>
<td><input type="text" name="weizhi" value="{$baide.weizhi}" /></td>
</tr>
<tr>
<td>公司部门</td>
<td><input type="text" name="bumen" title="{$baide.bumen}" value="{$baide.bumen}" /></td>
</tr>
<tr>
<td>TEL</td>
<td><input type="text" name="TEL" value="{$baide.TEL}" /></td>
</tr>
<tr>
<td>QQ</td>
<td><input type="text" name="QQ" value="{$baide.QQ}" /></td>
</tr>
<tr>
<td>Email</td>
<td><input type="text" name="email" value="{$baide.email}" /></td>
</tr>
<tr>
<td>住址</td>
<td><input type="text" name="dizhi" value="{$baide.dizhi}" /></td>
</tr>
<tr>
<td>头像</td>
<td><input type="text" name="img" value="{$baide.img}" /></td>
</tr>
<tr>
<td><input type="submit" name="保 存" value="保 存" /></td>
<td><input type="reset" name="清 空" value="清 空" /></td>
</tr>
</table>
</form>
</volist>当我点击<a href="__URL__/upgr/id/{$baide.id}">编辑档案</a>的时候执行到了
if($upgr){
echo "<script type='text/javascript'>alert('更新成功');window.navigate('geren');</script>";
}else{
echo "<script type='text/javascript'>alert('更新失败');window.navigate('geren');</script>";
}
数据也被清空 求指点
触发编辑界面是通过传入 id<form action="__URL__/upgr" method="get"
这个表单里没有 id (不过没有id如何进行 update 呢)function upgr()
应根据 是否传入了 id 来分别处理
一个方法要执行不同的两种操作(读、写)是很不好的
首页是列表页面,我通常会命名为listXXX
因此,先在action中编写listXXX的方法,其主要作用是获取数据,并设置到页面,通常是这样的 public function listXXX(){
$dao=M("admin");
$baide=$dao->select();
$this->assign("baide",$baide);
$this->assign("title",'极限互动办公自动化系统');
$this->display();
}同时编写tpl目录下的页面,listXXX.html,核心代码如下:<volist name="baide" id="baide">
<tr>
<td>{$baide.name}</td>
<td>{$baide.sex}</td>
<td>{$baide.TEL}</td>
<td>{$baide.QQ}</td>
<td>{$baide.email}</td>
<td>{$baide.dizhi}</td>
<td><img src="../../{$baide.img}" width="25" height="30"/></td>
<td>
<a href="__URL__/upgr/id/{$baide.id}">编辑档案</a>
</td>
</tr>
</volist>
注意这里的编辑档案,你只是把id作用参数带过去,因此要在action中,利用id把详细内容检索出来,并设置到页面.
在action中编写upgr方法(这里要与你<a>标签中指定的名称一致),其实我建议改个方法名如:updateXXX
public function upgr(){
$dao = M("admin");
$id = $_GET['id'];
$details=$dao->where("id=$id")->select();
$this->assign("baide",$details);
$this->display();
}编写upgr.html,核心代码如下:<volist name="baide" id="baide">
<form action="__URL__/doUpgr/id/{$baide.id}" method="get" name="geren">
<table width="200" border="1">
<tr>
<td width="44">姓名</td>
<td width="140"><input type="text" name="name" value="{$baide.name}" /></td>
</tr>
<tr>
<td width="44">密码</td>
<td width="140"><input type="text" name="password" value="{$baide.password}" /></td>
</tr>
<tr>
<td>性别</td>
<td><input type="text" name="sex" value="{$baide.sex}" /></td>
</tr>
<tr>
<td>公司职位</td>
<td><input type="text" name="weizhi" value="{$baide.weizhi}" /></td>
</tr>
<tr>
<td>公司部门</td>
<td><input type="text" name="bumen" title="{$baide.bumen}" value="{$baide.bumen}" /></td>
</tr>
<tr>
<td>TEL</td>
<td><input type="text" name="TEL" value="{$baide.TEL}" /></td>
</tr>
<tr>
<td>QQ</td>
<td><input type="text" name="QQ" value="{$baide.QQ}" /></td>
</tr>
<tr>
<td>Email</td>
<td><input type="text" name="email" value="{$baide.email}" /></td>
</tr>
<tr>
<td>住址</td>
<td><input type="text" name="dizhi" value="{$baide.dizhi}" /></td>
</tr>
<tr>
<td>头像</td>
<td><input type="text" name="img" value="{$baide.img}" /></td>
</tr>
<tr>
<td><input type="submit" name="保 存" value="保 存" /></td>
<td><input type="reset" name="清 空" value="清 空" /></td>
</tr>
</table>
</form>
</volist>请注意红色标注部分,然后在action中编写doUpgr方法 public function doUpgr(){
$dao = M("admin");
$id = $_GET['id'];
$dao->create();//这个方法没用过的话,强烈建议用用,超好用的
$dao["id"]=$id;//确保设置主键
if($dao->save()){
$this->assign("jumpUrl","listXXX");//设置跳转地址到列表页面
$this->success("修改成功!");
}else{
$this->assign("jumpUrl","upgr");//设置跳转地址到修改页面
$this->assign("baide",$dao);
$this->error("修改失败");
}
}
大概就是这样了,仅供参考!
但是有错误耶
$dao["id"]=$id;//确保设置主键 358行Fatal error: Cannot use object of type Model as array in F:\wamp\www\oa\OA\Lib\Action\ContentAction.class.php on line 358
但是有错误耶
$dao["id"]=$id;//确保设置主键 358行Fatal error: Cannot use object of type Model as array in F:\wamp\www\oa\OA\Lib\Action\ContentAction.class.php on line 358