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中禁止单个IP与ip段访问的代码小结
Jul 04 PHP
php之XML转数组函数的详解
Jun 07 PHP
file_get_contents(&quot;php://input&quot;, &quot;r&quot;)实例介绍
Jul 01 PHP
php实现12306火车票余票查询和价格查询(12306火车票查询)
Jan 14 PHP
PHP使用imagick读取PDF生成png缩略图的两种方法
Mar 20 PHP
10个简化PHP开发的工具
Dec 25 PHP
PHP封装的HttpClient类用法实例
Jun 17 PHP
WordPress特定文章对搜索引擎隐藏或只允许搜索引擎查看
Dec 31 PHP
php通过smtp邮件验证登陆的方法
May 11 PHP
thinkPHP中钩子的使用方法实例分析
Nov 16 PHP
PHP判断当前使用的是什么浏览器(推荐)
Oct 27 PHP
tp5.1 框架数据库常见操作详解【添加、删除、更新、查询】
May 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
短波问题解答
2021/02/28 无线电
PHP闭包实例解析
2014/09/08 PHP
php使用PDO方法详解
2014/12/27 PHP
PHP查询分页的实现代码
2017/06/09 PHP
js操作Xml(向服务器发送Xml,处理服务器返回的Xml)(IE下有效)
2009/01/30 Javascript
jQuery 入门级学习笔记及源码
2010/01/22 Javascript
Google 静态地图API实现代码
2010/11/19 Javascript
jQuery函数的等价原生函数代码示例
2013/05/27 Javascript
JavaScript回调(callback)函数概念自我理解及示例
2013/07/04 Javascript
写JQuery插件的基本知识
2013/11/25 Javascript
jQuery 过滤方法filter()选择具有特殊属性的元素
2014/06/15 Javascript
ashx文件获取$.ajax()方法发送的数据
2016/05/26 Javascript
JavaScript必看小技巧(必看)
2016/06/07 Javascript
利用JavaScript阻止表单提交的两种方法
2016/08/11 Javascript
js注入 黑客之路必备!
2016/09/14 Javascript
Vue.js动态添加、删除选题的实例代码
2016/09/30 Javascript
微信小程序+腾讯地图开发实现路径规划绘制
2019/05/22 Javascript
详解JavaScript数据类型和判断方法
2020/09/04 Javascript
Python使用ftplib实现简易FTP客户端的方法
2015/06/03 Python
Python实现截屏的函数
2015/07/26 Python
python框架django基础指南
2016/09/08 Python
selenium+python 去除启动的黑色cmd窗口方法
2018/05/22 Python
python程序变成软件的实操方法
2019/06/24 Python
django 基于中间件实现限制ip频繁访问过程详解
2019/07/30 Python
Python安装及Pycharm安装使用教程图解
2019/09/20 Python
Python+OpenCV实现旋转文本校正方式
2020/01/09 Python
python实现文件分片上传的接口自动化
2020/11/19 Python
英智兴达软件测试笔试题
2016/10/12 面试题
UML设计模式笔试题
2014/06/07 面试题
专升本个人自我评价
2013/12/22 职场文书
自荐信的基本格式
2014/02/22 职场文书
一句话工作感言
2014/03/01 职场文书
自愿离婚协议书范本
2014/09/13 职场文书
确保工程质量承诺书
2015/04/29 职场文书
西游记读书笔记
2015/06/25 职场文书
《卧薪尝胆》读后感3篇
2019/12/26 职场文书