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 相关文章推荐
深入解析yii权限分级式访问控制的实现(非RBAC法)
Jun 13 PHP
php中过滤非法字符的具体实现
Oct 29 PHP
php阻止页面后退的方法分享
Feb 17 PHP
php截取字符串函数substr,iconv_substr,mb_substr示例以及优劣分析
Jun 10 PHP
destoon设置自定义搜索的方法
Jun 21 PHP
php学习笔记之基础知识
Nov 08 PHP
php递归json类实例
Dec 02 PHP
php之可变变量的实例详解
Sep 12 PHP
Laravel中七个非常有用但很少人知道的Carbon方法
Sep 21 PHP
PHP上传文件及图片到七牛的方法
Jul 25 PHP
Laravel框架运行出错提示RuntimeException No application encryption key has been specified.解决方法
Apr 02 PHP
thinkPHP5框架路由常用知识点汇总
Sep 15 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中数组定义的几种方法
2013/09/01 PHP
yii框架builder、update、delete使用方法
2014/04/30 PHP
ECSHOP完美解决Deprecated: preg_replace()报错的问题
2016/05/17 PHP
wordpress网站转移到本地运行测试的方法
2017/03/15 PHP
PHP命名空间定义与用法实例分析
2019/08/14 PHP
JavaScript 空位补零实现代码
2010/02/26 Javascript
JQuery 将元素显示在屏幕的中央的代码
2010/02/27 Javascript
基于jQuery实现左右div自适应高度完全相同的代码
2012/08/09 Javascript
关闭浏览器输入框自动补齐 兼容IE,FF,Chrome等主流浏览器
2014/02/11 Javascript
js超时调用setTimeout和间歇调用setInterval实例分析
2015/01/28 Javascript
javascript判断并获取注册表中可信任站点的方法
2015/06/01 Javascript
JS简单循环遍历json数组的方法
2016/04/22 Javascript
简单的js表格操作
2016/09/24 Javascript
JavaScript中的this陷阱的最全收集并整理(没有之一)
2017/02/21 Javascript
微信小程序 实现动态显示和隐藏某个控件
2017/04/27 Javascript
微信小程序中页面FOR循环和嵌套循环
2017/06/21 Javascript
Three.js实现浏览器变动时进行自适应的方法
2017/09/26 Javascript
React组件重构之嵌套+继承及高阶组件详解
2018/07/19 Javascript
jQuery pager.js 插件动态分页功能实例分析
2019/08/02 jQuery
vue中 this.$set的用法详解
2019/09/06 Javascript
vue cli 3.0通用打包配置代码,不分一二级目录
2020/09/02 Javascript
[49:08]Secret vs VP 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
TensorFlow Session会话控制&amp;Variable变量详解
2018/07/30 Python
Python 使用Numpy对矩阵进行转置的方法
2019/01/28 Python
Python实现定时自动关闭的tkinter窗口方法
2019/02/16 Python
Exoticca英国:以最优惠的价格提供豪华异国情调旅行
2018/10/18 全球购物
公司前台接待岗位职责
2013/12/03 职场文书
项目副经理岗位职责
2013/12/30 职场文书
中学生学雷锋活动心得体会
2014/03/10 职场文书
小学端午节活动方案
2014/03/13 职场文书
大学生标准自荐书
2014/06/15 职场文书
六一领导慰问欢迎词
2015/01/26 职场文书
幼儿园安全管理制度
2015/08/05 职场文书
值班管理制度范本
2015/08/06 职场文书
心理学培训心得体会
2016/01/22 职场文书
蓝牙耳机怎么连接电脑win11? Win11蓝牙耳机连接电脑的技巧
2023/01/09 数码科技