Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [CakePHP] walidacja formularza zdefiniowanego w widoku
Forum PHP.pl > Forum > PHP > Frameworki
taro
Witajcie.

Mam sobie formularz stworzony w pliku widoku w taki oto sposób.

<?php
echo $this->Form->create();
echo $this->Form->input('Input', array('label' => 'Input:'));
echo $this->Form->input('Passwd', array('label' => 'Passwd:', 'type' => 'password'));
(...)
echo $this->Form->end('Logowanie!');
?>

Czy da się do tego zrobić w jakiś prosty sposób walidację?

Widziałem coś takiego:
http://new.book.cakephp.org/view/1143/Data-Validation

tylko jak to połączyć z kodem powyżej?

Dziękuję za wszelkie porady.
Pozdrawiam.
kicaj
W modelu musisz dodac zmienna $validate = array(); (w sumie to jest wytlumaczone w linku)

U Ciebie bedzie to wygladalo mniej wiecej tak:
Kod
class TwojModel extends AppModel {
...
var $validate = array(
    'input' => array(
        'rule' => 'notEmpty',
        'require' => true,
        'allowEmpty' => false,
        'message' => 'Pole nie moze byc puste!'));
...
}
taro
Dziękuję za odpowiedź.

Widok:
  1. <?php
  2. echo $this->Form->create(array());
  3. echo $this->Form->input('Input', array('label' => 'Input:'));
  4. echo $this->Form->end('Logowanie!');
  5. ?>


Model:
  1. <?php
  2. class LoginForm extends AppModel {
  3.  
  4. var $useTable = false;
  5. var $validate = array(
  6. 'Input' => array(
  7. 'rule'=>array('minLength', 1),
  8. 'message'=>'Name is required' )
  9. );
  10. }
  11. ?>


Akcja:
  1. function webroot() {
  2. $this->loadModel('LoginForm');
  3. }


I co dalej? bo jakoś się wcale nie wyświetla błąd po przesłaniu formularza sad.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.