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 相关文章推荐
phpMyadmin 用户权限中英对照
Apr 02 PHP
mayfish 数据入库验证代码
Apr 30 PHP
浅析php原型模式
Nov 25 PHP
PHP使用gmdate实现将一个UNIX 时间格式化成GMT文本的方法
Mar 19 PHP
ECSHOP在PHP5.5及高版本上报错的解决方法
Aug 31 PHP
PHP附件下载中文名称乱码的解决方法
Dec 17 PHP
Yii快速入门经典教程
Dec 28 PHP
PHP简单实现无限级分类的方法
May 13 PHP
浅谈PHP Cookie处理函数
Jun 10 PHP
php array_values 返回数组的值实例详解
Nov 17 PHP
PHP实现基于图的深度优先遍历输出1,2,3...n的全排列功能
Nov 10 PHP
PHP实现从上往下打印二叉树的方法
Jan 18 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
Zend公司全球首推PHP认证
2006/10/09 PHP
PHP调用MySQL存储过程并返回值的方法
2014/12/26 PHP
thinkPHP js文件中U方法不被解析问题的解决方法
2016/12/05 PHP
PHP的PDO预处理语句与存储过程
2019/01/27 PHP
bcastr2.0 通用的图片浏览器
2006/11/22 Javascript
javascript 一个函数对同一元素的多个事件响应
2009/07/25 Javascript
javascript下arguments,caller,callee,call,apply示例及理解
2009/12/24 Javascript
Javascript Object.extend
2010/05/18 Javascript
SWFObject 2.1以上版本语法介绍
2010/07/10 Javascript
一个JQuery写的点击上下滚动的小例子
2011/08/27 Javascript
jquery实现无刷新验证码的简单实例
2016/05/19 Javascript
JavaScript职责链模式概述
2016/09/17 Javascript
JavaScript中const、var和let区别浅析
2016/10/11 Javascript
微信小程序 video组件详解
2016/10/25 Javascript
微信小程序实现表单校验功能
2020/03/30 Javascript
JavaScript累加、迭代、穷举、递归等常用算法实例小结
2018/05/08 Javascript
详解React native fetch遇到的坑
2018/08/30 Javascript
vue项目搭建以及全家桶的使用详细教程(小结)
2018/12/19 Javascript
JS中封装axios来管控api的2种方式
2019/09/11 Javascript
layui table单元格事件修改值的方法
2019/09/24 Javascript
vue中@change兼容问题详解
2019/10/25 Javascript
vue实现瀑布流组件滑动加载更多
2020/03/10 Javascript
Python中使用item()方法遍历字典的例子
2014/08/26 Python
Python3实现从指定路径查找文件的方法
2015/05/22 Python
python字符串对其居中显示的方法
2015/07/11 Python
Python闭包之返回函数的函数用法示例
2018/01/27 Python
Python实现的凯撒密码算法示例
2018/04/12 Python
pycharm的console输入实现换行的方法
2019/01/16 Python
flask框架jinja2模板与模板继承实例分析
2019/08/01 Python
Python小程序之在图片上加入数字的代码
2019/11/26 Python
浅谈Python中re.match()和re.search()的使用及区别
2020/04/14 Python
Python 日期与时间转换的方法
2020/08/01 Python
公司租房协议书范本
2014/10/08 职场文书
国家助学贷款承诺书
2015/04/30 职场文书
Python音乐爬虫完美绕过反爬
2021/08/30 Python
Redis唯一ID生成器的实现
2022/07/07 Redis