Dodanie podstrony do net47
Z Net47 2.0
Opis co należy zrobić.
- Chcemy utworzyć podstronę np.
http://adresnet47/firma/informacja
- Tworzymy plik FirmaController.php w:
/home/net47/application/modeules/net47/controllers/
- Przykładowy kod:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | <?php class FirmaController extends Zend_Controller_Action { //jeśli chcemy mieć w całym kontrolerze np. dostęp do bazy danych dodajemy funkcję init() public function init() { //dodajemy własność w której trzymamy połączenie z bazą danych, możemy jej używać we wszystkich akcjach kontrolera $this ->db = Zend_Registry::get( 'db' ); } //teraz dodajemy naszą podstronę(akcję) informacja public function informacjaAction() { // jeśli chcemy cały kod html umieścić bezpośredonie w kodzie akcji, musimy wyłączyć widok $this ->_helper->viewRenderer->setNoRender(); /* * jeśli tego nie zrobimy, musimy w /home/net47/application/modules/net47/views/ * utworzyć katalog odpowiadający nazwą naszemu kontrolerowi, w tym przypadku katalog musi się nazywać "firma" * w tym katalogu tworzymy plik z rozszerzeniem phtml odpowiadający nazwie akcji czyli informacja.phtml * w tym pliku (widoku) dodajemy sobie html który wyświetli się po wejściu na podstoronę informacja * * możemy przekazywać zmienne z akcji do widoku np. * $this->view->ile_klientow = $ile; * a następnie w widoku wyświetlić np. <strong>Mamy <?=$this->ile_klientow?> klientow</strong> */ // jeśli nie chcemy korzystać z layoutu net47, np chcemy wyświetlić białą stronę z tekstem, możemy go wyłączyć $this ->_helper->getHelper( 'layout' )->disableLayout(); //mamy połączenie z bazą danych, możemy pobrać np liczbę klientów $ile = $this ->db->fetchOne( "select count(id) from client.customers" ); echo "Mamy $ile klientów" ; } //jeśli chcemy żeby jakaś podstrona była pod adresem http://adresnet47/firma/ dodajemy funkcję indexAction(domyślna akcja) public function indexAction() { $this ->_helper->viewRenderer->setNoRender(); $this ->_helper->getHelper( 'layout' )->disableLayout(); echo 'test' ; } } ?> |