2012-06-26 1 views
0

У меня есть таблица, которая принимает класс (например, A, B, C ...), а другая принимает метки (0-100) .I хотите, чтобы каждый класс принимал заданный диапазон меток. Eg A должен принимать любые отметки в диапазоне 75-100.Cakephp: Как подтвердить поля для принятия диапазона значений для определенной записи

Если пользователь вводит оценку, он должен принимать только знак в диапазоне этого класса. Мои два поля следующие.

$mygrade =array('A'=>'A','B'=>'B','C'=>'C','D'=>'D','E'=>'E','U'=>'U'); 
     echo $this->Form->label('Grade: '); 


echo $this->Form->label('Mark(%): '); 
echo $this->Form->input("ApplicantOlevelQualification.mark.$s",array('label'=>'')); 

Пожалуйста, помогите ребятам я застрял

ответ

2

Если я правильно понял ваш вопрос правильно, вы пытаетесь проверить свои знаки с оценкой, который выбран.

Я предполагаю, ApplicantOlevelQualification - ваша модель. Создание модели и включают в себя проверку:

<?php 
class ApplicantOlevelQualification extends AppModel { 
    public $validate = array(
     'grade' => array(
      'notempty' => array(
       'rule' => array('inList', array('A', 'B')), 
       'message' => 'Not in range.', 
      ) 
     ), 
     'marks' => array(
      'notempty' => array(
       'rule' => array('validMarks'), 
       'message' => 'Marks does not meet the criteria.', 
      ), 
     ) 
    ); 

    function validMarks($check) { 
     //Access $this->data and $check to compare your marks and grade.. 
    } 
} 
?> 

Надежда, что помогает.

+0

Танки, ты спас свой день. –