通过获取表单数据的id与数据库的比较查询信息实现数据修改 [ 1.1 版本 ]
controller代码
<?php
class TalkController extends CController
{
public function actionGetTalk(){//查找所有数据
$talk = Talk::model()->findAll(); //将数据表中全部信息存到 $talk
$this->renderPartial('admin',array('talk'=>$talk));
}
public function actionGetTalkById(){//根据主键查询数据
$id=$_GET['id'];
$talk=Talk::model()->find('id=:id',':id'=>$id);
$this->renderPartial('select',array('talk'=>$talk));
}
public function actionGetDeleteTalk()
{
$id=$_GET['id'];
$talk=Talk::model()->findByPk($id);
$talk->delete(); // 从数据表中删除此行
return $this->actionGetTalk();
}
public function actionToAddTalk(){
$this->redirect('talk/index');
}
public function actionAddTalk2(){
$talk=new Talk;
$username=$_POST['username'];
$subject=$_POST['subject'];
$content=$_POST['content'];
$talk->subject=$subject;
$talk->username=$username;
$talk->content=$content;
$talk->save();
return $this->actionGetTalk();
}
public function actionToUpdateTalk(){
$id=$_GET["id"];
$talk=Talk::model()->find('id=:id ',array(':id'=>$id));
$this->renderPartial('update',array('talk'=>$talk));
}
public function actionGetUpdateTalk(){
$id=$_POST['id'];
$talk=Talk::model()->find('id=:id ',array(':id'=>$id));
$talk->subject=$_POST['subject'];
$talk->content=$_POST['content'];
$talk->username=$_POST['username'];
$talk->save(); // 将更改保存到数据库
return $this->actionGetTalk();
}
}
update视图代码
<table border="1" style="margin-top: 100px;margin-left: 100px">
<tr >
<input type="text" name="id" value="编号" hidden/>
</tr>
<tr><?php foreach ($talk as $sq):
?>
<td>主题</td>
<td>
<textarea type="text" name="subject" style="width: 1000px" ><?php echo $sq->subject;?></textarea>
</td>
</tr>
<tr>
<td>内容</td>
<td>
<textarea type="text" name="content" style="width: 1000px"><?php echo $sq->content;?></textarea>
</td>
</tr>
<tr>
<td>留言人</td>
<td>
<textarea type="text" name="username" style="width: 1000px"><?php echo $sq->username;?></textarea>
</td>
</tr>
<?php endforeach;
?>
<tr>
<td colspan="2" style="text-align: center"><input type="submit" name="submit" value="修改"></td>
</tr>
</table>
我的代码报错说传递到表单的的不是一个有效数组
admin视图将保存在数据库的信息显示出来,每条数据后面都有修改,删除等操作,当点击修改时将其对应的数据从数据库查找输出在另一表单,问下查询的实现
龘瞾 补充于 2019-02-19 13:22
共 2 个回答
-
admin是一个列表信息;修改是选择了其中指定的一个,一般是一条数据的id,拿这个id去数据库查询到指定的数据,再返回到编辑表单页,把这条数据可以编辑的字段都填充到表单里,在此基础上修改呗。然后提交后台update。
你是想知道这些吗?
list.php;展示所有数据到列表信息,一般有分页;
update.php;基本就是编辑更新的表单页;
post.php;创建项目的表单页;创建成功后跳转到list列表页;
view.php;查看页,查看指定到数据。
咋滴,是不是你想要到?共 5 条回复龘瞾 觉得很赞
龘瞾 四川成都
注册时间:2018-12-21
最后登录:2019-11-06
在线时长:37小时20分
最后登录:2019-11-06
在线时长:37小时20分
- 粉丝2
- 金钱1045
- 威望0
- 积分1415