使用yii框架的搜索操作出错

时间:2014-04-04 07:04:23

标签: php yii

我是yii框架的新手。我正在数据库中搜索数据。 但我得到了错误

错误

 Unable to resolve the request "jobsite/error". (C:\wamp\www\yii\framework\web\CWebApplication.php:286).

我的controllerSitecontroller.phpmodeljob,我的视频网页为seach.phpsearch_result.php。我的table名称是jobs。 //我的代码如下。 //控制器是Sitecontroller.php

 <?php
   class SiteController extends Controller
     {
     public function actionsearch()
  {
   $user_id = trim($_GET['id']);  
   $model = new Job ;
   if(isset($_POST['Job']))
      {
        $model->attributes=$_POST['Job'];
        $title=$_POST['Job']['title'];
        $model=Job::model()->find(array('select'=>'*',"condition"=>"title like '%$title%'",));
        $number=count($model);
        if($number>0)
        {
          $this->redirect(array('site/search_result','model'=>$model));     
        }

      }
   $this->render('search',array('model' =>$model));
 }
   public function actionsearch_result()
  {
   $model = new Job ;
   $this->render('search_result',array('model' =>$model));
 }
     }
  ?>

//model-job.php

规则部分

 <?php

public function rules()
{
    return array(
        array('title,key_skills','required'),
    );
}

&GT;

//视图-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,'title'); ?>
</div>
<div class="row buttons">
    <?php echo CHtml::submitButton('Search'); ?>
</div>
  <?php $this->endWidget(); ?>
  </div>

//视图-search_result.php

  <div style="float:right;margin-right:285px;">
  <h1>Search Jobs</h1>
 <table width="200" border="1">
 <tr>
 <td>SI No</td>
 <td>Title</td>
 <td>Key Skill</td>
  <td>Experince</td>
 </tr>
  <?php
foreach($model as $models)  
   { 
 ?>
<tr>
<td></td>
<td><?php echo $models->title; ?></td>
<td><?php echo $models->key_skills; ?></td
 ><td><?php echo $models->experience; ?></td
  ></tr>
 <?php
  }
 ?>
  </table>
 </div>

有人帮帮我吗?

1 个答案:

答案 0 :(得分:0)

您在main-config中设置了错误的错误页面。 (被保护/配置/ main.php)

您应该将错误操作设置为错误处理程序(或将其重置为有效页面)。

'errorHandler'=>array(
    'errorAction'=>'site/error',
),

在error.php(View)中,您需要<?php echo CHtml::encode($message); ?>才能打印出错误。

您可以在此处找到Yii error handling

的说明

如果您已实现此功能,Yii将能够显示sql查询产生的错误。