url访问地址:localhost/bb/index.php?r=Appear/detail
models下的文件
他们的名称都与表名相同
appear.php文件里的内容 如下
class appear extends CActiveRecord{
public function rules(){//规则
return array(//返回数组
array('username,title,des,dataline','required')//表的字段 'required'为字段后必须添加的
);
}
}
Reply.php文件里的内容 如下
class Reply extends CActiveRecord{
public function rules(){
return array(
array('tid,username,des,dataline','required'),//表的字段 'required'为字段后必须添加的
);
}
}
controllers文件夹下的文件
文件名为AppearController.php
//显示详情页面
public function actiondetail(){
$Appear = new Appear();
$reply = new reply();
$id = $_GET['id'];
$rlist = $reply->findAllByAttributes(array('tid'=>$id));//根据文章id查找回复数据
$list = $Appear->findAllByAttributes(array('id'=>$id));//根据文章id查看详情
$this->render('detail',array('list'=>$list,'rlist'=>$rlist));//引入文件detail 后面的参数是传递参数
}
保存的添加回复
public function actionreply(){
$reply = new reply();//实例化表
$data['tid'] = $_POST['tid'];
$data['username'] = $_POST['username'];
$data['des'] = $_POST['des'];
$data['dataline'] = time();
$reply->attributes = $data;//赋值给属性
if($reply->insert()){//保存
echo 1;
}else{
echo 2;
}
}
views文件夹下的文件
如果aacontroller下的方法引用页面,那么views下必须要有aa文件夹
文件名为detail.php
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>留言板详情页</title>
</head>
<body>
<a href="index.php?r=Appear/list">返回列表</a>
<table>
<tr><td><h3><?php echo $list[0]['title']?></h3></td></tr>
<tr><td><?php echo $list[0]['des']?></td></tr>
<tr><td><?php echo $list[0]['username']?></td></tr>
<tr><td><?php echo date('Y-m-d H:i:s',$list[0]['dataline']);?></td></tr>
</table>
<span>------------------------------------------</span><br />
<?php foreach($rlist as $v) {?>
用户名:<?php echo $v['username']?><br />
评论:<?php echo $v['des']?><br />
时间:<?php echo date('Y-m-d H:i:s',$v['dataline'])?><br />
<?php }?>
<br />
<span>------------------------------------------</span><br />
<input type="hidden" class="hid" value="<?php echo $list[0]['id']?>">
姓名:<input type="text" class="username"><br />
内容:<textarea class="des"></textarea><br />
<input type="button" id="dosubmit" value="回复">
</body>
<script src="js/jquery.js"></script>
<script>
$(document).ready(function (){
var url = document.location.href;
$("#dosubmit").click(function(){
var tid = $(".hid").val();
var username = $(".username").val();
var des = $(".des").val();
$.ajax({
url:'index.php?r=Appear/reply',
type:'POST',
data:'tid='+tid+'&username='+username+'&des='+des,
success:function (data){
if(data == 1){
document.location.href = url;
}else{
alert('sad');
}
}
});
})
})
</script>
</html>