2014-11-22 3 views
0

мне нужна пользовательские проверки на представить, я сделал кодирование, как показано ниже:Moodle проверке не работает

<?php 

require_once("{$CFG->libdir}/formslib.php"); 

class pool_status_form extends moodleform { 

    function definition() { 
global $DB, $USER, $qnsCount; 

     $mform =&$this->_form; 
//number of question per user 
$mform->addElement('text', 'peruser', get_string('peruserquestion', 'qpool'), array('id' => 'peerqn')); 
$mform->addRule('peruser', null, 'required', null, 'client'); 
$mform->addRule('peruser', null, 'numeric', null, 'client'); 
$mform->setType('peruser', PARAM_RAW); 


//$this->add_action_buttons(false, 'SAVE'); 
$mform->addElement('submit', 'subbtn', get_string("buttonlabel", "qpool")); 

    } 


public function validation($data, $files) { 


$errors = parent::validation($data, $files); 

if (($data['peruser'])>3) { 

$errors['peruser'] = "Error.."; 

} 

return $errors; 
} 
} 

При нажатии кнопки она непосредственно направляющая, не проверяя валидации я упомянул внутри представить мой

«функция проверки». Что мне делать??

ответ

0

Функция проверки достоверности выполняется на сервере. Просто вызовите $ form-> get_data(), и он запустится.

Кроме того, почему вы добавляете правило «требуется» дважды? Почему тип данных PARAM_RAW - мне кажется PARAM_INT.

Смежные вопросы