2015-10-01 9 views
0

Я пытаюсь проверить форму, но она не отображает ошибки проверки и, если поле пусто, оно сохраняет. Как проверить форму? Мой код:Как проверить форму в Kohana 3.3.1

public function action_upload() 
{ 
if($_POST) { 

       $name = array(
        'name' => Arr::get($_POST, 'name') 
       ); 
       $validate = Validation::factory($name) 
       ->rule('name', 'not_empty'); 
       try { 

        $save = Model_Offers::Save($this->user['user_id'], $name); 

       } 
       catch (ORM_Validation_Exception $e) 
       { 
        $result = $e->errors('models'); 
        echo '<pre>'; 
        print_r($result); 
        exit; 
       } 

      } 

    } 

мой взгляд:

<form id="myForm" action="<?php echo URL::base()?>user/upload" method="post" enctype="multipart/form-data"> 
 
<div class="input-group"> 
 
    <label for="file">Name: </label> 
 
    <input type="text" name="name" id="name"><br> 
 
</div> 
 
</form>

+0

Не работали с Kohana в течение некоторого времени, но не должно быть правила '-> ('title', 'not_empty');'? Вы устанавливаете ключ в 'title', а не' name' – kero

+0

Речь идет о вводе 'name'. –

+0

Да, но нет '$ title ['name']', только '$ title ['title']' – kero

ответ

0

Вы создали объект проверки, но вы забыли на самом деле применить правила, присвоенные. Просто сделать это по телефону

$validate->check() 

Было бы лучше, чтобы поместить это в случае, еще заявление

if($validate->check()){ 
//Save object 
} 
else{ 
//Get errors (use $validate->errors()) 
} 

Надежда, что помогает! :)

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

  • Нет связанных вопросов^_^