Comment utiliser Yii pour insérer un formulaire de commentaire dans la page de détails de l'article d'un système de blog mono-utilisateur

不言
Libérer: 2023-04-01 13:56:01
original
1209 Les gens l'ont consulté

Cet article présente principalement la méthode de Yii pour insérer un formulaire de commentaire dans la page de détails de l'article d'un système de blog mono-utilisateur. Il analyse les techniques spécifiques de Yii pour implémenter la fonction de formulaire de commentaire sur la page de détails de l'article avec des exemples. besoin peut s'y référer

L'exemple de cet article décrit la méthode de Yii pour insérer un formulaire de commentaire dans la page de détails de l'article d'un système de blog mono-utilisateur. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

partie action :

<?php
function test($objs)
{
 $objs->var=10;
}
class one
{
 public $var=1;
}
$obj=new one();
echo $obj->var.&#39;<p>&#39;;
test($obj);
echo $obj->var;
exit;
Copier après la connexion

Page 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(&#39;view&#39;,array(
    &#39;model&#39;=>$post,
    &#39;comment&#39;=>$comment,
  ));
}
protected function newComment($post)
{
  $comment=new Comment();
  if(isset($_POST[&#39;Comment&#39;]))
  {
   $comment->attributes=$_POST[&#39;Comment&#39;];
   if($post->addComment($comment))//==============================
   {
    if($comment->status==Comment::STATUS_PENDING)
     Yii::app()->user->setFlash(&#39;commentSubmitted&#39;,&#39;Thank you...&#39;);
    $this->refresh();
   }
  }
  return $comment;
}
...
Copier après la connexion

page modèles/Post.php :

...
public function addComment($comment)
{
  if(Yii::app()->params[&#39;commentNeedApproval&#39;])
   $comment->status=Comment::STATUS_PENDING;
  else
   $comment->status=Comment::STATUS_APPROVED;
  $comment->post_id=$this->id;
  return $comment->save();
}
...
Copier après la connexion

post/ page view.php :

...
<p id="comments">
<h3>Leave a Comment</h3>
<?php if(Yii::app()->user->hasFlash(&#39;commentSubmitted&#39;)): ?>
 <p class="flash-success">
 <?php echo Yii::app()->user->getFlash(&#39;commentSubmitted&#39;); ?>
 </p>
<?php else: ?>
 <?php $this->renderPartial(&#39;/comment/_form&#39;,array(
 &#39;model&#39;=>$comment,
 )); ?>
<?php endif; ?>
</p><!-- comments -->
...
Copier après la connexion

Ce qui précède est l'intégralité du contenu de cet article. J'espère qu'il sera utile à tout le monde. Étude. Veuillez prêter attention au contenu plus pertinent du site Web chinois PHP !

Recommandations associées :

Analyse de l'utilisation du package de ressources front-end fourni avec le framework Yii en PHP

À propos de Yii Implémentation de méthodes de gestion des connexions front et backend

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal