Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Kilka słow o generowaniu formularzy
Vomit
post
Post #1





Grupa: Zarejestrowani
Postów: 122
Pomógł: 0
Dołączył: 23.01.2006

Ostrzeżenie: (0%)
-----


Witam,

Wiele czytalem, googlowalem i czesto spotykalem sie z programistami wykorzystujacymi w swoich projektach biblioteki generujace formularze.

Natrafilem m.in. na PEAR'owski QuickForm, OPF i Former Bastiona.

Sa to spore biblioteki, wspierajace JS, a nawet AJAX. OPF posiada podobno takze zaimplementowany router oraz obiekt request.

Nie wiem jednak czy jest sens wykorzystywac tak wielki kombajn, chce wiec zaprosic do dyskusji - jak napisac prosta, ale kompletna, ciekawa klase do generowania formularzy?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
MMP
post
Post #2





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 2.06.2006

Ostrzeżenie: (0%)
-----


Diwi, testowałem już podobną koncepcje - ... - jest do dużo więcej pisania niżeli potrzeba i w dodatku takie .. nie wygodne.

Moja biblioteka formularzy składa się z dwóch klasa (Form, ValidateForm) + wtyczki fo klasy szablonów

To co zaprezentował divi u mnie by wyglądało tak:

Kod
{form id="NameForm"}
Imię: <input type="text" name="NameForm[Imie]" />
{if #Error[Imie]}
{#Error[Imie][0]} <!-- Wyświetla pierwszy błąd -->
{/if}
Nazwisko: <input type="text" name="NameForm[Nazwisko]" />
{if #Error[Nazwisko]}
{#Error[Nazwisko][0]} <!-- Wyświetla pierwszy błąd -->
{/if}
Hasło: <input type="text" name="NameForm[Haslo]" />
{if #Error[Haslo]}
{#Error[Haslo][0]} <!-- Wyświetla pierwszy błąd -->
{/if}
Powtorz haslo: <input type="text" name="NameForm[ReHaslo]" />
{/form}

i w php
  1. <?php
  2. $oForm = new Form( "NameForm" );
  3. $oValidateForm = new ValidateForm( "Imie" );
  4. $oValidateForm -> is();
  5. $oForm -> errorVal( $oValidateForm );
  6. $oValidateForm = new ValidateForm( "Nazwisko" );
  7. $oValidateForm -> is();
  8. $oForm -> errorVal( $oValidateForm );
  9. $oValidateForm = new ValidateForm( "Haslo" );
  10. $oValidateForm -> is();
  11. $oValidateForm -> equal( $oForm -> ReHaslo() );
  12. $oForm -> errorVal( $oValidateForm );
  13. $oTemplate -> form( $oForm );
  14. ?>

$oValidateForm wysyła kod błędu do $oForm, a $oForm pobiera odpowiedni string z plików językowych (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

[Dodano] Ludvik, popitoliło Cię z tym diagramem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) . Takie rozbicie nie ma sensu jeżeli chodzi o aplikacje http

Ten post edytował MMP 10.07.2006, 21:54:08
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 3.10.2025 - 04:00