我想在意见表和评论中提出意见。我遵循这个功能..
<?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'=>$data,
)); ?>
但现在显示错误.... 'htmlspecialchars()期望参数1为字符串,对象为'
'评论'下的'_form.php'是
<div class="form">
<?php $form=$this->beginWidget('CActiveForm', array(
'id'=>'comment-form',
'enableAjaxValidation'=>true,
)); ?>
<p class="note">Fields with <span class="required">*</span> are required.</p>
<?php echo $form->errorSummary($model); ?>
<div class="row">
<?php echo $form->labelEx($model,'content'); ?>
<?php echo $form->textArea($model,'content',array('rows'=>6, 'cols'=>50)); ?>
<?php echo $form->error($model,'content'); ?>
</div>
<div class="row">
<?php echo $form->labelEx($model,'author'); ?>
<?php echo $form->textField($model,'author',array('size'=>60,'maxlength'=>128)); ?>
<?php echo $form->error($model,'author'); ?>
</div>
答案 0 :(得分:0)
yii的'htmlspecialchars()的问题是期望参数1是字符串,给定的对象'是我们不知道是什么导致了这个错误。
我做了这个粗略的改变yii / web / helpers / CHTML.php:
public static function encode($text)
{
if (is_object($text)){
echo __FILE__ ." ".__LINE__;
var_dump($text);
die(" This is an object, and it must be string!");
}
else
return htmlspecialchars($text,ENT_QUOTES,Yii::app()->charset);
}
所以至少我知道该方法发送了什么对象。
答案 1 :(得分:0)
哎哟,不要改变核心类。
Yii活动记录模型粘贴到您的数据库表中。此警告消息的一个可能原因是您的db表不包含您尝试在表单中提供的所有列。
猜猜:)