Yii实现单用户博客系统文章详情页插入评论表单的方法


Posted in PHP onDecember 28, 2015

本文实例讲述了Yii实现单用户博客系统文章详情页插入评论表单的方法。分享给大家供大家参考,具体如下:

action部分:

<?php
function test($objs)
{
 $objs->var=10;
}
class one
{
 public $var=1;
}
$obj=new one();
echo $obj->var.'<p>';
test($obj);
echo $obj->var;
exit;

PostController.php页面:

...
/**
* Displays a particular model.
* @param integer $id the ID of the model to be displayed
*/
public function actionView($id)
{
  $post=$this->loadModel($id);
  $comment=$this->newComment($post);
  $this->render('view',array(
    'model'=>$post,
    'comment'=>$comment,
  ));
}
protected function newComment($post)
{
  $comment=new Comment();
  if(isset($_POST['Comment']))
  {
   $comment->attributes=$_POST['Comment'];
   if($post->addComment($comment))//==============================
   {
    if($comment->status==Comment::STATUS_PENDING)
     Yii::app()->user->setFlash('commentSubmitted','Thank you...');
    $this->refresh();
   }
  }
  return $comment;
}
...

models/Post.php页面:

...
public function addComment($comment)
{
  if(Yii::app()->params['commentNeedApproval'])
   $comment->status=Comment::STATUS_PENDING;
  else
   $comment->status=Comment::STATUS_APPROVED;
  $comment->post_id=$this->id;
  return $comment->save();
}
...

post/view.php页面:

...
<div id="comments">
<h3>Leave a Comment</h3>
<?php if(Yii::app()->user->hasFlash('commentSubmitted')): ?>
 <div class="flash-success">
 <?php echo Yii::app()->user->getFlash('commentSubmitted'); ?>
 </div>
<?php else: ?>
 <?php $this->renderPartial('/comment/_form',array(
 'model'=>$comment,
 )); ?>
<?php endif; ?>
</div><!-- comments -->
...

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

PHP 相关文章推荐
用PHP读注册表
Oct 09 PHP
php 图片上传类代码
Jul 17 PHP
用PHP查询搜索引擎排名位置的代码
Jan 05 PHP
PHP 中文处理技巧
Apr 25 PHP
PHP 清空varnish 缓存的详解(包括指定站点下的)
Jun 20 PHP
详解PHP中strlen和mb_strlen函数的区别
Mar 07 PHP
盘点PHP和ASP.NET的10大对比!
Dec 24 PHP
JSON两种结构之对象和数组的理解
Jul 19 PHP
php 截取utf-8格式的字符串实例代码
Oct 30 PHP
yii框架无限极分类的实现方法
Apr 08 PHP
php设计模式之正面模式实例分析【星际争霸游戏案例】
Mar 24 PHP
用php实现分页效果的示例代码
Dec 10 PHP
YII使用url组件美化管理的方法
Dec 28 #PHP
yii去掉必填项中星号的方法
Dec 28 #PHP
Yii中实现处理前后台登录的新方法
Dec 28 #PHP
Yii中CGridView实现批量删除的方法
Dec 28 #PHP
Yii基于数组和对象的Model查询技巧实例详解
Dec 28 #PHP
yii权限控制的方法(三种方法)
Dec 28 #PHP
Yii使用Captcha验证码的方法
Dec 28 #PHP
You might like
PHP使用pdo连接access数据库并循环显示数据操作示例
2018/06/05 PHP
PHP创建XML接口示例
2019/07/04 PHP
jQuery html()等方法介绍
2009/11/18 Javascript
Jquery ajaxsubmit上传图片实现代码
2010/11/04 Javascript
基于JQUERY的多级联动代码
2012/01/24 Javascript
node.js中的fs.futimesSync方法使用说明
2014/12/17 Javascript
javascript折半查找详解
2015/01/26 Javascript
AngularJS基础知识笔记之过滤器
2015/05/10 Javascript
单行 JS 实现移动端金钱格式的输入规则
2017/05/22 Javascript
vue脚手架vue-cli的学习使用教程
2017/06/06 Javascript
微信小程序getPhoneNumber获取用户手机号
2017/09/29 Javascript
webstorm中vue语法的支持详解
2018/05/09 Javascript
vue项目如何刷新当前页面的方法
2018/05/18 Javascript
微信小程序当前时间时段选择器插件使用方法详解
2018/12/28 Javascript
JS学习笔记之数组去重实现方法小结
2019/05/29 Javascript
ElementUI之Message功能拓展详解
2019/10/18 Javascript
vue远程加载sfc组件思路详解
2019/12/25 Javascript
React中使用UMEditor的方法示例
2019/12/27 Javascript
使用next.js开发网址缩短服务的方法
2020/06/17 Javascript
Vue项目利用axios请求接口下载excel
2020/11/17 Vue.js
[03:38]TI4西雅图DOTA2前线报道 71专访
2014/07/08 DOTA
Django Highcharts制作图表
2016/08/27 Python
破解安装Pycharm的方法
2018/10/19 Python
深入解析Python小白学习【操作列表】
2019/03/23 Python
浅析Python 实现一个自动化翻译和替换的工具
2019/04/14 Python
Python自动抢红包教程详解
2019/06/11 Python
Python 列表中的修改、添加和删除元素的实现
2020/06/11 Python
手把手教你用纯css3实现轮播图效果实例
2017/05/04 HTML / CSS
巴西美妆购物网站:Kutiz Beauté
2019/03/13 全球购物
美国滑板店:Tactics
2020/11/08 全球购物
优秀小学生家长评语
2014/01/30 职场文书
幼儿园法制宣传日活动总结
2014/11/01 职场文书
中秋节寄语2015
2015/03/24 职场文书
大学生逃课检讨书
2015/05/04 职场文书
html css3不拉伸图片显示效果
2021/06/07 HTML / CSS
python库sklearn常用操作
2021/08/23 Python