使用yii框架提交表单时,检查文本框的值是否为空白

时间:2014-04-04 12:37:48

标签: php yii

我是yii框架中的新手。我正在使用yii框架进行搜索搜索操作。我的要求是在控制器中检查文本框值是否为空。我可以在变量'$ experience'中打印文本框值。但我不能检查它是空白还是没有。控制器名称Sitecontroller.php,查看search.php和模型job.php

我的控制器是Sitecontroller.php

<?php
 class SiteController extends Controller
 {
 public function actionsearch()
  {
   $user_id = trim($_GET['id']);  
   $model = new Job ;
   if(isset($_POST['Job']))
      {
        if(Yii::app()->getRequest()->getIsAjaxRequest())
          {
            echo CActiveForm::validate(array($jobProfileM2)); 
            Yii::app()->end(); 
          }
          $model->attributes=$_POST['Job'];
          if($model->validate())
           {
             $title=$_POST['Job']['title'];
             $experience=$_POST['Job']['experience'];
             echo "data".$experience=trim($experience);
             if($_POST['Job']['experience'] == " ")
             {
                echo "hai";
             }
  $model=Job::model()->findAll(array('select'=>'*',"condition"=>"(title like '%$title%')
  or   (key_skills like '%$title%')",));
             $number=count($model);
//$this->redirect($this->createUrl('site/search_result',array('title'=>$title,)));  
           }
           else
           {
             Yii::app()->user->setFlash('error', "Validation failed!");
           }                                 
    }
   $this->render('search',array('model' =>$model));
 }
 }
  ?>

//视图-search.php中

<div class="form">
  <?php $form=$this->beginWidget('CActiveForm', array(
'id'=>'login-form',
'enableClientValidation'=>false,
'htmlOptions' => array(),
    'clientOptions'=>array(
    'validateOnSubmit'=>true
),
 )); ?>
  <?php
foreach(Yii::app()->user->getFlashes() as $key => $message) {
    echo '<div class="flash-' . $key . '">' . $message . "</div>\n";
   }
 ?>
   <div class="row">
   <?php echo $form->labelEx($model,'Keyword'); ?>

    <?php echo $form->textField($model,'title'); ?>
    <?php echo $form->error($model,'Keyword'); ?>
</div>
   <div class="row">
   <?php echo $form->labelEx($model,'Experience'); ?>
    <?php echo $form->textField($model,'experience'); ?>
    <?php echo $form->error($model,'experience'); ?>
</div> 
<div class="row buttons">
    <?php echo CHtml::submitButton('Search'); ?>
</div>
   <?php $this->endWidget(); ?>
  </div>

当遇到文本框空白时,我无法打印'hai'消息。有人帮助我吗?

1 个答案:

答案 0 :(得分:1)

if($_POST['Job']['experience'] == " ")
{
    echo "hai";
}

这不会检查字符串是否为空。无论有空间,都要检查。你想要的是检查""。但是,如果它不应该继续遵循Michiel的建议。