Lab 4 - Wstęp do Zend Framework

Transkrypt

Lab 4 - Wstęp do Zend Framework
Technologie programowania systemów internetowych
Laboratorium 4
Laboratorium 4 – Wprowadzenie do Zend Framework
Opis środowiska
•
Jeśli w katalogu htdocs znajduje się podkatalog zf_lab, a w nim standardowa hierarchia
katalogów projektu Zend Framework (katalogi application, library, public, itd.),
wówczas projekt dostępny będzie pod adresem:
http://localhost/zf_lab/public/
•
Biblioteki Zend Framework znajdują się w standardowej ścieżce PHP, nie ma potrzeby
umieszczania ich w swoim projekcie.
•
Z linii poleceń dostępne jest narzędzie Zend Tool – aby sprawdzić jego działanie, uruchom
linię poleceń i wydaj komendę:
zf show version
Powinieneś otrzymać wynik:
Zend Framework Version: 1.11.10
Tworzenie projektu – aplikacja: prosty kalkulator
1. W Netbeans stwórz nowy projekt typu: PHP Application. Umieść go w katalogu o nazwie
zf_lab.
2. Skonfiguruj opcje uruchamiania projektu (Run Configuration):
a. w polu Run As wybierz Local Web Site;
b. wskaż właściwy URL projektu: http://localhost/zf_lab/public/;
c. pole Index File pozostaw puste.
3. W ostatnim kroku (PHP Frameworks) zaznacz Zend PHP Web Framework.
4. Uruchom nowoutworzony projekt, sprawdź działanie.
Technologie programowania systemów internetowych
Laboratorium 4
5. Przyjrzyj się utworzonej hierarchii katalogów w projekcie. Sprawdź zawartość katalogów:
configs, controllers, views
6. Dwa najważniejsze na tym etapie katalogi to:
a. controllers – tutaj znajdą się wszystkie kontrolery naszej aplikacji;
b. views – tutaj znajdą się pliki widoków; w podkatalogu scripts znajdą się
podkatalogi o nazwach odpowiadających nazwie kontrolera, a w nich pliki o
nazwach odpowiadających nazwie akcji; przykłady:
Kontroler: index, akcja: index →
→ plik: /application/views/scripts/index/index.phtml
Kontroler: error, akcja: error →
→ plik: /application/views/scripts/error/error.phtml
7. Otwórz plik widoku /application/views/scripts/index/index.phtml, podmień
zawartość na własną, np.:
<div>
<h1>Witamy w Zendowym Kalkulatorze</h1>
</div>
Uruchom projekt, sprawdź działanie.
8. W głównej akcji umieścimy formularz, w którym użytkownik wpisze dwie liczby. Dodaj
odpowiedni kod do index.phtml:
<div>
<h1>Witamy w Zendowym Kalkulatorze</h1>
<form action="/zf_lab/index/dodaj" method="POST">
<input type="text" name="a">
<input type="text" name="b">
<input type="submit" value="Dodaj">
</form>
</div>
Uruchom projekt, sprawdź działanie.
Zwróć uwagę na formę URL podanego w atrybucie action. Prowadzi on do akcji dodaj
w kontrolerze index.
9. Pora dodać akcję obsługującą dane i wykonującą obliczenia. Aby dodać nową akcję o nazwie
dodaj w kontrolerze Index, wydaj polecenie:
zf create action dodaj Index
Możesz to zrobić z poziomu Netbeans: kliknij prawym klawiszem na nazwie projektu,
wybierz Zend->Run command…, a następnie wpisz powyższe polecenie.
Technologie programowania systemów internetowych
Laboratorium 4
10. Przejdź w edytorze do pliku IndexController.php. W pliku powinna być widoczna
pusta metoda dodajAction – wypełnij ją poniższym kodem wykonującym obliczenia:
public function dodajAction()
{
$a = $this->getRequest()->getParam('a');
$b = $this->getRequest()->getParam('b');
$c = $a + $b;
$this->view->wynik = $c;
}
Dostęp do parametrów przesłanych w żądaniu (a więc np. danych wpisanych w formularzu)
uzyskujemy wywołując metodę getParam:
$this->getRequest()->getParam(nazwa parametru)
W ostatniej linii przekazaliśmy wynik do widoku:
$this->view->wynik = $c;
Oznacza to, że w obiekcie widoku dostępne będzie pole o nazwie wynik, zawierające
przypisaną tu wartość (wynik dodawania).
11. Dodanie nowej akcji spowodowało także dodanie widoku – nowy plik o nazwie
dodaj.phtml powinien zajdować się w katalogu views/scripts/index/. Wypełnij go
poniższą treścią:
<div>
<h1>Witamy w Zendowym Kalkulatorze</h1>
<h2>Wynik dodawania:
<?php echo $this->wynik; ?>
</h2>
<a href="/zf_lab/index/index">Jeszcze raz</a>
</div>
Uruchom projekt, sprawdź działanie.
Zadanie 1
1. Dodaj swoją akcję o nazwie powiedzCzesc. Przyjrzyj się, jakie utworzono pliki, jaka jest
nazwa metody akcji, a jaka pliku z widokiem.
W Zend Framework przyjęto następujące konwencje nazewnictwa:
• nazwy kontrolerów,
mojaNazwaAkcji;
akcji,
metod zapisujemy
w
konwencji
camel
case,
np.
Technologie programowania systemów internetowych
Laboratorium 4
• nazwy plików widoków oraz ścieżki w URL zapisujemy małymi literami, słowa
oddzielając od siebie myślnikiem, np. moja-nazwa-akcji.
2. W kontrolerze, w metodzie powiedzCzescAction(), przygotuj tekst komunikatu do
wyświetlenia i przekaż go do widoku:
$this->view->komunikat = 'Elo Ziom! (Witam Kolegę - przyp. tłum.)';
W widoku wyświetl przekazany komunikat:
<?php
echo $this->komunikat;
?>
3. Dodaj link do tej akcji na stronie głównej, pod formularzem.
Zadanie 2
1. Usuń link do powiedz-czesc ze strony głównej, zamiast tego dodaj drugi formularz
z polem Imię. Formularz ma być wysłany do akcji powiedz-czesc, która wyświetli
komunikat 'Cześć' oraz imię wpisane w formularzu, np. ‘Cześć Zdzichu’.

Podobne dokumenty