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 minixml详解
Jul 19 PHP
一个简洁实用的PHP缓存类完整实例
Jul 26 PHP
Codeigniter的dom类用法实例
Jun 26 PHP
php计划任务之验证是否有多个进程调用同一个job的方法
Dec 07 PHP
php解决和避免form表单重复提交的几种方法
Aug 31 PHP
php通过执行CutyCapt命令实现网页截图的方法
Sep 30 PHP
PHP实现上传图片到 zimg 服务器
Oct 19 PHP
PHP面向对象程序设计组合模式与装饰模式详解
Dec 02 PHP
Zend Framework框架中实现Ajax的方法示例
Jun 27 PHP
TP3.2批量上传文件或图片 同名冲突问题的解决方法
Aug 01 PHP
php生成毫秒时间戳的实例讲解
Sep 22 PHP
PHP hex2bin()函数用法讲解
Feb 25 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
安装ImageMagick出现error while loading shared libraries的解决方法
2014/09/23 PHP
PHP简单实现二维数组的矩阵转置操作示例
2017/11/24 PHP
Yii2框架加载css和js文件的方法分析
2019/05/25 PHP
jquery 表格分页等操作实现代码(pagedown,pageup)
2010/04/11 Javascript
关闭ie窗口清除Session的解决方法
2014/01/10 Javascript
jQuery中prop()方法用法实例
2015/01/05 Javascript
javascript中数组方法汇总
2015/07/07 Javascript
JavaScript编写简单的计算器
2015/11/25 Javascript
AngularJs实现ng1.3+表单验证
2015/12/10 Javascript
jqGrid 学习笔记整理——进阶篇(一 )
2016/04/17 Javascript
学习Bootstrap滚动监听 附调用方法
2016/07/02 Javascript
js原生代码实现轮播图的实例讲解
2017/07/28 Javascript
jquery之基本选择器practice(实例讲解)
2017/09/30 jQuery
详解Vue打包优化之code spliting
2018/04/09 Javascript
使用Node.js写一个代码生成器的方法步骤
2019/05/10 Javascript
Python抓取Discuz!用户名脚本代码
2013/12/30 Python
Python类的多重继承问题深入分析
2014/11/09 Python
python中的字典使用分享
2016/07/31 Python
Django Admin 实现外键过滤的方法
2017/09/29 Python
python爬取网页内容转换为PDF文件
2020/07/28 Python
python pandas.DataFrame选取、修改数据最好用.loc,.iloc,.ix实现
2018/06/11 Python
Python中几种属性访问的区别与用法详解
2018/10/10 Python
对python判断ip是否可达的实例详解
2019/01/31 Python
keras多显卡训练方式
2020/06/10 Python
html5 Canvas绘制线条 closePath()实例代码
2012/05/10 HTML / CSS
推荐10个HTML5响应式框架
2016/02/25 HTML / CSS
Sport-Thieme荷兰:购买体育用品
2019/08/25 全球购物
乐观大学生的自我评价
2014/01/10 职场文书
小学校园活动策划
2014/01/30 职场文书
小学社会实践活动总结
2014/07/03 职场文书
计算机应用应届生求职信
2014/07/12 职场文书
幼儿园教师节感谢信
2015/01/23 职场文书
学术研讨会欢迎词
2015/01/26 职场文书
vue实现无缝轮播效果(跑马灯)
2021/05/14 Vue.js
利用Python将list列表写入文件并读取的方法汇总
2022/03/25 Python
如何使用python包中的sched事件调度器
2022/04/30 Python