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