Ayuda error htmlspecialchars()

Buenas soy nuevo en el foro, tengo un problema que me ha llevado todo el día y ya no se que hacer…

Bien primero lo primero, Tengo una tabla que contiene los numeros de cedula, nombres, apellidos, fecha de nacimiento de la persona, y con solo meter el numero de cedula mediante un blur me traigo todos los datos y funciona correctamente y tambien lo guarda en base de datos, pero ahora quiero calcular cuantos años tiene esa persona y lo guarde en base de datos en un campo "edad"… Todo esto me funciona correctamente, el trae los datos, hace la conversión y lo guarda en base de datos pero me arroja un error que es el siguiente:


PHP warning

htmlspecialchars() expects parameter 1 to be string, resource given 

-------------------------------------------------------

101     public static function encode($text)

102     {

103         return htmlspecialchars($text,ENT_QUOTES,Yii::app()->charset);

104     }

Tengo mi codigo de la siguiente manera, en el controlador:


	public function actionCreate()

	{

		$model=new Persona;


		// Uncomment the following line if AJAX validation is needed

		// $this->performAjaxValidation($model);


		if(isset($_POST['Persona']))

		{

			$model->attributes=$_POST['Persona'];

			$fechaNacimiento = $model->dtmfecha_nacimiento;


            //Aqui puedes mandar a llamar un método que te calcule la edad p.e.

            $edad = $this->calcularEdad($fechaNacimiento);

            //Antes de guardar

            $model->clvedad = $edad;


            //$model->clvusuario = Yii::app()->user->id;

			if($model->save())

				$this->redirect(array('view','id'=>$model->clvcodigo));

		}


		$this->render('create',array(

			'model'=>$model,

		));

	}


    public function calcularEdad($fechaNacimiento) 

    {

        list($Y,$m,$d) = explode("-",$fechaNacimiento);

        return( date("md") < $m.$d ? date("Y")-$Y-1 : date("Y")-$Y );

    }

y en el formulario:


<?php

/* @var $this PersonaController */

/* @var $model Persona */

/* @var $form CActiveForm */

?>




<div class="form">


<?php $form=$this->beginWidget('CActiveForm', array(

	'id'=>'persona-form',

	// Please note: When you enable ajax validation, make sure the corresponding

	// controller action is handling ajax validation correctly.

	// There is a call to performAjaxValidation() commented in generated controller code.

	// See class documentation of CActiveForm for details on this.

	'enableAjaxValidation'=>false,

)); ?>


	<p class="note">Campos con <span class="required">*</span> son requeridos.</p>


	<?php echo $form->errorSummary($model); ?>


<fieldset><LEGEND align="left">DATOS PERSONALES</LEGEND>

<div class="row1">

	<div class="row">

		<?php echo $form->labelEx($model,'strcedula'); ?>

		<?php echo $form->textField($model,'strcedula',array('size'=>15,'maxlength'=>15, 'id'=>'strcedula')); ?>

		<?php echo $form->error($model,'strcedula'); ?>

	</div>


<script>

    $('#strcedula').on('blur', function(){

                $.ajax({

                url: <?php echo "'".CController::createUrl('persona/Cedula')."'"; ?>,

                data: {'strcedula' : $('#strcedula').val()},

                type: "post",

                success: function(data){

                              /*  if (data == 0){

                                        alert("No existe la persona");}

                                else{*/

                                var retrievedJSON = data;

                                var array = JSON.parse(retrievedJSON);

                                strprimer_nombre.value = array[0].strnombre_primer;

                                strprimer_nombre.disabled = false;

                                strsegundo_nombre.value = array[0].strnombre_segundo;

                                strsegundo_nombre.disabled = false;

                                strprimer_apellido.value = array[0].strapellido_primer;

                                strprimer_apellido.disabled = false;

                                strsegundo_apellido.value = array[0].strapellido_segundo;

                                strsegundo_apellido.disabled = false;

                                dtmfecha_nacimiento.value = array[0].dtmnacimiento;

                                dtmfecha_nacimiento.disabled = false;

                      

                  

                               /* }*/

                        }

                });

        })

</script>


	<div class="row">

		<?php echo $form->labelEx($model,'strrif'); ?>

		<?php echo $form->textField($model,'strrif',array('size'=>15,'maxlength'=>15)); ?>

		<?php echo $form->error($model,'strrif'); ?>

	</div>


	<div class="row">

		<?php echo $form->labelEx($model,'strprimer_nombre'); ?>

		<?php echo $form->textField($model,'strprimer_nombre',array('size'=>20,'maxlength'=>20, 'id'=>'strprimer_nombre')); ?>

		<?php echo $form->error($model,'strprimer_nombre'); ?>

	</div>




</div>


<div class="row1">

	<div class="row">

		<?php echo $form->labelEx($model,'strsegundo_nombre'); ?>

		<?php echo $form->textField($model,'strsegundo_nombre',array('size'=>20,'maxlength'=>20, 'id'=>'strsegundo_nombre')); ?>

		<?php echo $form->error($model,'strsegundo_nombre'); ?>

	</div>


	<div class="row">

		<?php echo $form->labelEx($model,'strprimer_apellido'); ?>

		<?php echo $form->textField($model,'strprimer_apellido',array('size'=>20,'maxlength'=>20, 'id'=>'strprimer_apellido')); ?>

		<?php echo $form->error($model,'strprimer_apellido'); ?>

	</div>


	<div class="row">

		<?php echo $form->labelEx($model,'strsegundo_apellido'); ?>

		<?php echo $form->textField($model,'strsegundo_apellido',array('size'=>20,'maxlength'=>20, 'id'=>'strsegundo_apellido')); ?>

		<?php echo $form->error($model,'strsegundo_apellido'); ?>

	</div>




</div>


<div class="row1">

		<div class="row">

		<?php echo $form->labelEx($model,'dtmfecha_nacimiento'); ?>

		<?php

		$this->widget('zii.widgets.jui.CJuiDatePicker', array(

			'language'=>'es',

			'id'=>'dtmfecha_nacimiento',

		    'name'=>'Persona[dtmfecha_nacimiento]',

			'value'=>$model->dtmfecha_nacimiento,

		    // additional javascript options for the date picker plugin

		    'options'=>array(

		        'showAnim'=>'fold',

				'dateFormat' => 'yy-mm-dd', // save to db format

				'changeYear' => 'true',

				'showAnim'=>'slide',

				'changeYear' => true,           // can change year

                'changeMonth' => true,          // can change month    // maximum date

            	'dateFormat' => 'yy-mm-dd', // save to db format

				'altField' => '#dtmfecha_nacimiento',

				'class'=>'desa-opcio',

				'minDate' => '1900-01-01',

				'maxDate' => '+y',

				'altField' => '#self_pointing_id',

				

		    ),

		    'htmlOptions'=>array(

				'class'=>'shadowdatepicker', 'style'=>'width:163px;'

		    ),

		));

		?>

		<?php echo $form->error($model,'dtmfecha_nacimiento'); ?>

	</div>







	<div class="row">

		<?php echo $form->labelEx($model,'stremail'); ?>

		<?php echo $form->textField($model,'stremail',array('size'=>50,'maxlength'=>50)); ?>

		<?php echo $form->error($model,'stremail'); ?>

	</div>




	<div class="row">

		<?php echo $form->labelEx($model,'strtelefono'); ?>

		<?php 

		$this->widget('CMaskedTextField', array(

			'model' => $model,

			'attribute' => 'strtelefono',

			'mask' => '9999-9999999',

			'htmlOptions' => array('size' => 30)

		));

		 ?>

		<?php echo $form->error($model,'strtelefono'); ?>

	</div>




</div>


<div class="row1">

	<div class="row">

		<?php echo $form->labelEx($model,'direccion'); ?>

		<?php echo $form->textArea($model,'direccion',array('style'=>'max-width: 570px; width: 570px; min-width: 570px; max-height: 140px; min-height: 50px; height: 80px;')); ?>

		<?php echo $form->error($model,'direccion'); ?>

	</div>


</div>

	<div class="row">

		<?php echo $form->labelEx($model,'foto'); ?>

		<?php echo $form->textField($model,'foto'); ?>

		<?php echo $form->error($model,'foto'); ?>

	</div>


</fieldset>





<fieldset><LEGEND align="left">DATOS DEL RESPONSABLE</LEGEND>

<div class="row1">

	<div class="row">

		<?php echo $form->labelEx($model,'strcedula_responsable'); ?>

		<?php echo $form->textField($model,'strcedula_responsable',array('size'=>15,'maxlength'=>15)); ?>

		<?php echo $form->error($model,'strcedula_responsable'); ?>

	</div>


	<div class="row">

		<?php echo $form->labelEx($model,'strrif_responsable'); ?>

		<?php echo $form->textField($model,'strrif_responsable',array('size'=>15,'maxlength'=>15)); ?>

		<?php echo $form->error($model,'strrif_responsable'); ?>

	</div>


	<div class="row">

		<?php echo $form->labelEx($model,'strprimer_nombre_responsable'); ?>

		<?php echo $form->textField($model,'strprimer_nombre_responsable',array('size'=>20,'maxlength'=>20)); ?>

		<?php echo $form->error($model,'strprimer_nombre_responsable'); ?>

	</div>




</div>


<div class="row1">


	<div class="row">

		<?php echo $form->labelEx($model,'strsegundo_nombre_responsable'); ?>

		<?php echo $form->textField($model,'strsegundo_nombre_responsable',array('size'=>20,'maxlength'=>20)); ?>

		<?php echo $form->error($model,'strsegundo_nombre_responsable'); ?>

	</div>


	<div class="row">

		<?php echo $form->labelEx($model,'strprimer_apellido_responsable'); ?>

		<?php echo $form->textField($model,'strprimer_apellido_responsable',array('size'=>20,'maxlength'=>20)); ?>

		<?php echo $form->error($model,'strprimer_apellido_responsable'); ?>

	</div>


	<div class="row">

		<?php echo $form->labelEx($model,'strsegundo_apellido_responsable'); ?>

		<?php echo $form->textField($model,'strsegundo_apellido_responsable',array('size'=>20,'maxlength'=>20)); ?>

		<?php echo $form->error($model,'strsegundo_apellido_responsable'); ?>

	</div>




</div>




<br>

	<input size="15" maxlength="15" name="Persona[clvusuario]" id="clvusuario" type="hidden" value="<?php echo yii::app()->user->id ?>"  />   

    <?php echo $form->error($model,'clvusuario'); ?>


	<div class="row buttons">

		<?php echo CHtml::submitButton($model->isNewRecord ? 'Guardar' : 'Guardar',

		array('class'=>'small green nice button radius')

		); ?>

	</div>


<?php $this->endWidget(); ?>


</div><!-- form -->

Espero que me puedan ayudar, ya que no se que hacer con ese error que me arroja, ya que guarda lo que necesito en base de datos correctamente pero no lo puedo ver ni actualizar porque sale ese error

Bueno ya lo solucione… Fue un error por el tipo de campo Bytea que meti, ya que quiero subir una foto, pero como iba por partes y primero queria hacer la funcionalidad de arriba hacia abajo no me percate, hasta que en la view comente el campo fotos y ya funciono todo.!