Formulář vrací pekelné nedobroty
- qteck
- Člen | 164
Ahoj,
nechce mi dupat zpracování formuláře. Script vypadá v této chvíli takto:
$form = new Form;
$form->addSelect('gallery', 'Přiřadit galerii: ', $this->upload->getGalleries());
$form->addUpload('img','Snímky: ', true)
->addCondition($form::FILLED)
->addRule(Form::IMAGE, 'Obrázek může být pouze ve formátu jpg, png nebo gif')
->addRule(Form::MAX_FILE_SIZE,'Velikost snímku nesmí překročit 2 mb', 2*1048576);
$form->addSubmit('upload', 'Nahrát');
$this->template->form = $form;
if($form->isSuccess())
{
$this->flashMessage('Upload proběhl úspěšně!', 'info');
var_dump($form->getValues());
}else echo "ee";
Do výběru nezadám žádné soubory a stejně po kliknutí na submit Nahrát se to provede jako úspěch a vrátí mi to obsah z GetValues .. Why?
Díky
- qteck
- Člen | 164
tak jsem to tam hodil jako rule:
->addRule($form::FILLED, ‚Je potřeba naplnit pole obsahem.‘)
ale táži se, co když mi do toho zpracování pošle někdo data z vlastního formuláře? Kde nebude vyskakovat alert. Nebo je to pak ošetřené i co se týče phpka? a stačí pokračovat pouze v v podmínce kde ověřuji isSuccess?
Normálně bych to sprvail tak, že bych ověřil kliknutí na submit a poté, zda pole s uploadem obsahuje nějaká data. Tady to teď dělat nemusím?
Thx
- Michal Vyšinský
- Člen | 608
Ahoj,
addCondition způsobí to, že se další pravidla aplikují jen pokud je
podmínka splněna – tedy pokud je vyplněno pole pro upload, tak se
kontroluje typ a maximální velikost. Místo addCondition použij
setRequired/addRule($form::FILLED)