Quickform

Marzec 12th, 2010

Najprostszym sposobem na komunikacje z osobą odwiedzającą nasza stronę www jest formularz. W pakietach PEARL znajduje się pakiet o nazwie QuickForm. Dzięki niemu możemy w bardzo szybki sposób zbudować formularze zarówno proste jak i bardziej skomplikowane. Aby zaznajomić się z możliwościami QuickForm stwórzmy prosty formularz. Kodowanie strony najlepiej ustawić na UTF-8. Mamy możliwość zastosowania wszechstronnej walidacji danych, możemy to zrobić po stronie klienta przed wysłaniem, jak i po stronie serwera gdy dane do niego dojdą. Wbudowane metody ułatwiają tworzenie walidacji. Możemy tworzyć własne funkcje i przypisywać je do dowolnych elementów formularzy. Sprawdźmy na przykładzie, załóżmy ze mamy dwa pola, pierwsze to użytkownik, drugie hasło. Walidacja ma sprawdzić czy zostały w te pola wpisane jakieś wartości. Następnie aplikacja ma sprawdzić czy wpisano poprawne dane. Użytkownik ma się składać z samych liter, hasło natomiast z samych liter i cyfr. W polu hasło musi się znaleźć minimum sześć znaków. Aby to uczynić należy przed wywołaniem validate() dodać reguły. Należy także określić komunikaty które się wyświetlą użytkownikowi gdy ten wpisze niewłaściwe dane lub za krótkie hasło. W QuickForm mamy też do dyspozycji filtry które w odróżnieniu od reguł pozwalają na modyfikację wprowadzonych przez użytkownika danych. Tej metody używa się często do wycięcia ze zmiennych niepotrzebnych znaków np. spacji. Kolejna możliwością jaką daje nam pakiet jest możliwość wstawiania wartości domyślnych, wtedy określone pola mogą przyjąć zadeklarowane przez nas wartości. Zerknijmy jeszcze w jaki sposób są przetwarzane dane jakie otrzymaliśmy od użytkownika. Najlepszą a zarazem najprostszym rozwiązaniem jest umieszczenie kodu który obrobi dane zaraz przed instrukcją warunkową. Gdy już nasz formularz jest gotowy to możemy się zająć jego wyglądem. Formularz domyślnie budowany jest na tabelach. Formularz możemy modyfikować używając kaskadowych arkuszy stylów. Możemy też pozbyć się wyświetlania w jednym skrypcie zarówno poleceń php jak i html. W tym celu możemy użyć szablonów SMARTY. Umożliwi to ograniczenie przeplatania się php z html. W ten sposób nasz formularz będzie bardziej elastyczny oraz uzyskamy możliwość buforowania strony www, co znacznie wpłynie na czas jaki jest potrzebny na wczytanie strony.