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 相关文章推荐
我的论坛源代码(一)
Oct 09 PHP
第十二节--类的自动加载
Nov 16 PHP
巧用php中的array_filter()函数去掉多维空值的代码分享
Sep 07 PHP
PHP反向代理类代码
Aug 15 PHP
Yii实现Command任务处理的方法详解
Jul 14 PHP
php-fpm添加service服务的例子
Apr 27 PHP
Laravel框架使用Seeder实现自动填充数据功能
Jun 13 PHP
yii2实现Ueditor百度编辑器的示例代码
Nov 02 PHP
php中pcntl_fork创建子进程的方法实例
Mar 14 PHP
在Laravel5中正确设置文件权限的方法
May 22 PHP
laravel 解决crontab不执行的问题
Oct 22 PHP
laravel框架中表单请求类型和CSRF防护实例分析
Nov 23 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
DOTA2游戏同人动画《龙之血》导演接受采访
2021/03/05 欧美动漫
PHP删除数组中空值的方法介绍
2014/04/14 PHP
ThinkPHP查询返回简单字段数组的方法
2014/08/25 PHP
PHP批量获取网页中所有固定种子链接的方法
2016/11/18 PHP
javascript while语句和do while语句的区别分析
2007/12/08 Javascript
一些有用的JavaScript和jQuery的片段分享
2011/08/23 Javascript
理解 JavaScript Scoping &amp; Hoisting(二)
2015/11/18 Javascript
JavaScript6 let 新语法优势介绍
2016/07/15 Javascript
JavaScript reduce和reduceRight详解
2016/10/24 Javascript
jQuery事件与动画基础详解
2017/02/23 Javascript
js实现简单的二级联动效果
2017/03/09 Javascript
基于Vue实现后台系统权限控制的示例代码
2017/08/29 Javascript
vue通过路由实现页面刷新的方法
2018/01/25 Javascript
记一次webpack3升级webpack4的踩坑经历
2018/06/12 Javascript
JS实现根据数组对象的某一属性排序操作示例
2019/01/14 Javascript
JavaScript变量作用域及内存问题实例分析
2019/06/10 Javascript
layui禁用侧边导航栏点击事件的解决方法
2019/09/25 Javascript
[54:02]2018DOTA2亚洲邀请赛 4.1 小组赛 B组 IG vs VGJ.T
2018/04/03 DOTA
Python Paramiko模块的使用实际案例
2018/02/01 Python
使用Python从零开始撸一个区块链
2018/03/14 Python
Python实现朴素贝叶斯分类器的方法详解
2018/07/04 Python
使用python爬取抖音视频列表信息
2019/07/15 Python
python3 实现爬取TOP500的音乐信息并存储到mongoDB数据库中
2019/08/24 Python
Python中的全局变量如何理解
2020/06/04 Python
Python3 webservice接口测试代码详解
2020/06/23 Python
如何完美的建立一个python项目
2020/10/09 Python
Python3.8.2安装包及安装教程图文详解(附安装包)
2020/11/28 Python
HTML5本地存储之Web Storage应用介绍
2013/01/06 HTML / CSS
日本面向世界,国际级的免税在线购物商城:DOKODEMO
2017/02/01 全球购物
记帐员岗位责任制
2014/02/08 职场文书
网站美工岗位职责
2014/04/02 职场文书
年度评优评先方案
2014/06/03 职场文书
美德少年事迹材料1000字
2014/08/21 职场文书
拆迁委托协议书
2014/09/15 职场文书
python plt.plot bar 如何设置绘图尺寸大小
2021/06/01 Python
SQLServer RANK() 排名函数的使用
2022/03/23 SQL Server