CMS Lab 07 Zend Framework

background image

dr inż. Piotr Czapiewski

Systemy zarządzania treścią

Laboratorium 7

Laboratorium 7 – Wprowadzenie do Zend Framework

Przygotowanie linii poleceń PHP

1.

Uruchom WebServ, sprawdź zainstalowaną wersję PHP (Prawy klawisz na ikonie WebServ
w zasobniku systemowym,

Informacje

). Jeśli wersja PHP jest mniejsza niż 5.2.5, wyłącz

WebServ i zainstaluj ponownie, wybierając przy instalacji wersję PHP 5.2.5.

2.

Dodaj katalog z PHP (przy standardowej instalacji

C:\Program Files\WebServ\php

)

do ścieżki systemowej, tak by można było korzystać z PHP z linii poleceń – na końcu
zmiennej systemowej PATH dopisz średnik i ścieżkę do katalogu.

3.

Uruchom linię poleceń i wpisz komendę:

php –version

Powinieneś uzyskać wynik zbliżony do tego:

PHP 5.2.5 (cli) (built: Nov 8 2007 23:18:51)

Copyright (c) 1997-2007 The PHP Group

Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies

with Zend Optimizer v3.3.0, Copyright (c) 1998-2007, by Zend Technologies

Instalacja Zend Framework

1.

Pobierz pakiet Zend Framework 1.10.2 Minimal ze strony:

http://framework.zend.com/download/current/

Rozpakuj do wybranego katalogu. W katalogu

library

znajdziesz wymagane biblioteki, a

w katalogu

bin

narzędzia wykorzystywane z poziomu linii poleceń.

2.

W katalogu WebServ utwórz podkatalog

includes

i przenieś do niego podkatalog

Zend

.

3.

Zawartość katalogu

bin

przenieś do podkatalogu

WebServ/php

.

4.

Jeśli WebServ nie jest uruchomiony – uruchom.

5.

Przejdź do edycji pliku

php.ini

(prawy klawisz na ikonie WebServ,

Ustawienia

,

PHP

,

Edycja plików konfiguracyjnych

,

php.ini

).

6.

Znajdź linijkę z dyrektywą

include_path

, usuń komentarz. Linijka powinna po zmianie

wyglądać tak:

include_path = ".;C:/Program Files/WebServ/includes"

7.

Zapisz plik konfiguracyjny, zamknij okienko, kliknij OK, poczekaj na restart serwera.

8.

W celu sprawdzenia poprawności instalacji uruchom linię poleceń i wydaj komendę:

zf show version

Powinieneś otrzymać wynik:

Zend Framework Version: 1.10.2

Tworzenie projektu

1.

W linii poleceń przejdź do katalogu

WebServ/httpd

.

2.

Wydaj polecenie tworzenia nowego projektu:

zf create Project zf_lab1

3.

Przyjrzyj się utworzonej hierarchii katalogów w projekcie. Sprawdź zawartość katalogów:

configs

,

controllers

,

views

4.

Dwa najważniejsze na tym etapie katalogi to:

controllers

– tutaj znajdą się wszystkie kontrolery w naszej aplikacji;

background image

dr inż. Piotr Czapiewski

Systemy zarządzania treścią

Laboratorium 7

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:

views/scripts/index/index.phtml

Kontroler:

error

, akcja:

error

, plik:

views/scripts/error/error.phtml

5.

Sprawdź działanie nowego projektu – w przeglądarce wejdź na adres:

http://localhost/zf_lab1/public/

Aplikacja: prosty kalkulator

1.

Uruchom dowolny edytor PHP, np. kED. Przejdź do katalogu z projektem.

2.

Otwórz plik

scripts/index/index.phtml

, podmień zawartość na własną, np.:

<div >

<h1>Witamy w Zendowym Kalkulatorze</h1>

</div>

Uruchom projekt, sprawdź działanie.

3.

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_lab1/public/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.

4.

Pora dodać akcję obsługującą dane i wykonującą obliczenia. Aby dodać nową akcję o nazwie

dodaj

, w linii poleceń przejdź do katalogu

zf_lab1

i wydaj komendę:

zf create action dodaj

5.

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()->getPost('a');

$b = $this->getRequest()->getPost('b');

$c = $a + $b;

$this->view->wynik = $c;

}

background image

dr inż. Piotr Czapiewski

Systemy zarządzania treścią

Laboratorium 7

W ostatniej linii przekazaliśmy wynik do widoku.

6.

Dodanie nowej akcji spowodowało także dodanie nowego 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: <?php echo $this->wynik; ?></h2>

<a href="/zf_lab1/public/index/index">Jeszcze raz</a>

</div>

Uruchom projekt, sprawdź działanie.

7.

W aplikacji użyliśmy bezwzględnych linków (np.

/zf_lab1/public/index/dodaj

),

które są trudne w utrzymaniu. Zamień oba linki (w widoku

index.phtml

oraz

dodaj.phtml

) na wywołanie funkcji pomocniczej url. Jako argumenty przekazujemy

nazwę kontrolera oraz akcji, do której link ma prowadzić, np.:

Zamiast

/zf_lab1/public/index/dodaj:

$this->url(array('controller' => 'index', 'action' => 'dodaj'));

Zadanie 1

1.

Dodaj swoją akcję o nazwie

powiedzCzesc

. Przyjrzyj się, jakie utworzono pliki, jaka jest

nazwa metody akcji, a jaka pliku z widokiem.

2.

W kontrolerze przygotuj komunikat do wyświetlenia, wyświetl go w widoku.

3.

Dodaj link do tej akcji na stronie głównej, pod formularzem. Użyj funkcji pomocniczej url.
Udało się?

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’.


Wyszukiwarka

Podobne podstrony:
CMS Lab 04 Szablony
CMS Lab 01 Podstawy Joomla
CMS Lab 03 JoomlaPack
Lab 07 Uwierzytelnianie v1 2
lab 07 projektowanie filtrow II
lab 07 wyprowadzanie równań ruchu2
CMS Lab 01 Podstawy Joomla
Lab 07
fiz lab 07
lab 07 wyprowadzanie równań ruchu
CMS Lab 06 Podstawy PHP
MP Lab 07 Filtracja, 9. WŁASNOŚCI FILTRACYJNE OŚRODKÓW POROWATYCH
Pierwsze kroki z Zend Framework
lab 07
Linux asm lab 07 (Wprowadzenie do Linux'a i Asemblera )

więcej podobnych podstron