Kek PHP - Form Validiation çalışmıyor

4 Cevap php

benim CakePHP (1.2.5.) benim form doğru doğrulamaz.

 $this->UserData->save($this->data);

Bana her zaman gerçek değerini verir. Ben sorunu bulamıyorum. UserData.nichname için etiket çalışır.

Bu Görünüm bulunuyor:

<?php
echo $form->create('UserData');
echo $form->error('UserData.nick_name');
echo $form->input('UserData.nick_name', array('id' => 'UserDatanick_name', 'rule' => 'alphaNumeric', 'label' =>'Nickname:', 'error' =>'false'));
echo $form->end( array( 'label' => ' Save ') );
?>

İşte benim Denetleyicisi'dir:

class UserDatasController extends AppController {
  var $name = 'UserDatas';
  function add(){
     if (!empty ($this->data)){
         $this->UserData->create();
         if ($this->UserData->save($this->data)){
             $this->Session->setFlash('input is valid');
         } else {
             $this->Session->setFlash('input is not valid');
         }
     }
  }
}

Modelinde olmayan için kurallar, i yayınlamayın reaseon bulunuyor.

Başka ne bir doğrulama için gerekli olan?

Thanks in advance Steve

4 Cevap

^^ also check what your files are called. you have named your model file user_data.php right? and your controller user_data_controller.php?

Çünkü CamelCasing bir çizgi unutmayın. Eğer modeli dosya adı yanlış olsun, alışkanlık şikayetçi ama bunun yerine varsayılan sihirli modelini kullanacak - modelin içinde doğrulama kuralları aldı alamadım neden olabilir.

Doğrulama kuralları modelinde tanımlı olması, görünümde, cakebook yılında chapter about data validation de göremiyorum.

Teşekkürler!

I already tried it with an appmodel. Now the Label also doesn't work.

İşte benim AppModel olduğunu:

class UserData extends AppModel {
   var $name = 'UserData';
   var $validate = array('nick_name' => array(
               'rule' => 'alphaNumeric',
               'label' =>'Nickname:',
               'error' =>'false')
       );
}

Ben sadece modeli kurallarını belirlemek inanıyorum, ama etiket $ form-> input () fonksiyonunun içinde tutulması olacaktır