本文实例讲述了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程序设计有所帮助。
本文地址:https://www.stayed.cn/item/10490
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我