marpab
29.10.2013, 15:21:59
Witam. Robię stronę w Zendzie na której mam 2 formularze. Jeden do newslettera w stopce, widoczny na każdej podstronie i jeden dostępny tylko na podstronie Kontakt. Po przejściu do podstrony Kontakt, uzupełnieniu któregoś formularza i zatwierdzeniu, uzupełniony formularz wykonuje się prawidłowo a pozostały pokazuje komunikaty z walidacji typu "to pole nie może być puste".
Chciałbym wiedzieć czy da się jakoś rozdzielić te formularze bez wykonywania ich w różnych akcjach? Tym bardziej, że Newsletter jest w helperze a chcę dopisać jeszcze logowanie widoczne na wszystkich stronach też w helperze.
qdlaty88
3.11.2013, 22:41:27
Jeśli dobrze zrozumiałem pytanie to możesz to zrobić poprzez ustawienie akcji w formularzu przez setAction().
$newsletterForm->setAction('?action=newsletter');
$kontaktForm->setAction('?action=kontakt');
i później sprawdzasz:
if(isset($_GET['action']) && $_GET['action']=='newsletter') { // validacja i reszta
}
if(isset($_GET['action']) && $_GET['action']=='kontakt') { // validacja i reszta
}
marpab
3.11.2013, 23:02:30
Zadziałało! Dzięki! A czy te akcje mają coś wspólnego z akcjami z controllera? Musi się jakoś nazewnictwo pokrywać?
qdlaty88
3.11.2013, 23:06:40
Nie muszą. Wpisałem takie dla przykładu.