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 递归效率分析
Nov 24 PHP
ie与session丢失(新窗口cookie丢失)实测及解决方案
Jul 15 PHP
百度站点地图(百度sitemap)生成方法分享
Jan 09 PHP
PHP中new static()与new self()的区别异同分析
Aug 22 PHP
PHP函数实现分页含文本分页和数字分页
Oct 23 PHP
php生成gif动画的方法
Nov 05 PHP
yii通过小物件生成view的方法
Oct 08 PHP
PHP对象实例化单例方法
Jan 19 PHP
PHP 中使用ajax时一些常见错误总结整理
Feb 27 PHP
PHP实现的登录页面信息提示功能示例
Jul 24 PHP
php中的buffer缓冲区用法分析
May 31 PHP
PHP实现基本留言板功能原理与步骤详解
Mar 26 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 中文字符入库或显示乱码问题的解决方法
2010/04/12 PHP
postfixadmin忘记密码后的修改密码方法详解
2016/07/20 PHP
PHP实现基于栈的后缀表达式求值功能
2017/11/10 PHP
php curl发送请求实例方法
2019/08/01 PHP
Opacity.js
2007/01/22 Javascript
JavaScript CSS修改学习第二章 样式
2010/02/19 Javascript
jQuery简单实现图片预加载
2015/04/20 Javascript
Jquery使用val方法读写value值
2015/05/18 Javascript
js+css实现上下翻页相册代码分享
2015/08/18 Javascript
JS实现的论坛Ajax打分效果完整实例
2015/10/31 Javascript
jQuery控制div实现随滚动条滚动效果
2016/06/07 Javascript
基于JavaScript实现跳转提示页面
2016/09/24 Javascript
JavaScript定义数组的三种方法(new Array(),new Array('x','y')
2016/10/04 Javascript
微信小程序  Mustache语法详细介绍
2016/10/27 Javascript
原生js实现图片放大缩小计时器效果
2017/01/20 Javascript
JavaScript 网页中实现一个计算当年还剩多少时间的倒数计时程序
2017/01/25 Javascript
使用原生的javascript来实现轮播图
2017/02/24 Javascript
Bootstrap 3浏览器兼容性问题及解决方案
2017/04/11 Javascript
python写日志封装类实例
2015/06/28 Python
Python3.2模拟实现webqq登录
2016/02/15 Python
Python求出0~100以内的所有素数
2018/01/23 Python
Python机器学习之K-Means聚类实现详解
2018/02/22 Python
python实现俄罗斯方块
2018/06/26 Python
Python 使用type来定义类的实现
2019/11/19 Python
Python socket聊天脚本代码实例
2020/01/02 Python
Python3 Tensorlfow:增加或者减小矩阵维度的实现
2020/05/22 Python
python3.7调试的实例方法
2020/07/21 Python
Eton丹麦官网:精美的男式衬衫
2020/05/27 全球购物
SQL Server的固定数据库角色都有哪些?对应的服务器权限有哪些?
2013/05/18 面试题
园林资料员岗位职责
2013/12/30 职场文书
地质工程专业毕业生求职信
2014/08/08 职场文书
2014党员干部四风问题对照检查材料思想汇报
2014/09/24 职场文书
财务部岗位职责
2015/02/03 职场文书
公司车辆维修管理制度
2015/08/05 职场文书
Django开发RESTful API实现增删改查(入门级)
2021/05/10 Python
Python pandas读取CSV文件的注意事项(适合新手)
2021/06/20 Python