Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [ZF] nie wczytuje bootstrap.php
cholew
post 4.09.2012, 12:50:13
Post #1





Grupa: Zarejestrowani
Postów: 64
Pomógł: 0
Dołączył: 5.01.2007

Ostrzeżenie: (0%)
-----


Witam,

Niedawno zacząłem z ZF i mam problem z plikiem bootstrap.php, w ogóle go nie wczytuje. Dodaje funkcje w bootstrap.php które zawierają 'echo' ale nic nie wyświetla. Gdzie mogę szukać przyczyny? Szukałem dość długo w internecie, jednak nie znalazłem nigdzie odpowiedzi.
Go to the top of the page
+Quote Post
darko
post 4.09.2012, 12:55:53
Post #2





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Pokaż ten bootstrap i napisz jeszcze czy korzystasz z budowy modułowej, wszelkie echo/print etc. tam jest niewskazane.


--------------------
Nie pomagam na pw, tylko forum.
Go to the top of the page
+Quote Post
cholew
post 4.09.2012, 12:59:28
Post #3





Grupa: Zarejestrowani
Postów: 64
Pomógł: 0
Dołączył: 5.01.2007

Ostrzeżenie: (0%)
-----


Korzystam z budowy modułowej, wiem że echo/print jest tam niewskazane, ale umieszczam tylko w celu sprawdzenia czy w ogóle ten plik jest wczytywany. A zawartość bootstrap.php to sama podstawa czyli:
  1. <?php
  2. class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
  3. {
  4.  
  5. }
Go to the top of the page
+Quote Post
darko
post 4.09.2012, 13:23:07
Post #4





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


W przypadku budowy modułowej Twój bootstrap powinien dziedziczyć z klasy Zend_Application_Module_Bootstrap. Poza tym upewnij się, że w application.ini masz:

resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"
resources.modules[] = ""


--------------------
Nie pomagam na pw, tylko forum.
Go to the top of the page
+Quote Post
ShadowD
post 4.09.2012, 13:26:59
Post #5





Grupa: Zarejestrowani
Postów: 1 333
Pomógł: 137
Dołączył: 25.03.2008
Skąd: jesteś??

Ostrzeżenie: (0%)
-----


Przypominam że nazwy metod muszą zaczynać się od _init...


--------------------
Mój blog - o wszystkim i niczym ale zazwyczaj związane z informatyką! ;-)
Githube

Usługi spawalnicze i monterskie | Park linowy Lublin i Okunince
Go to the top of the page
+Quote Post
cholew
post 4.09.2012, 13:37:27
Post #6





Grupa: Zarejestrowani
Postów: 64
Pomógł: 0
Dołączył: 5.01.2007

Ostrzeżenie: (0%)
-----


zmieniłem nazwę klasy z której dziedziczy, w application.ini mam tak jak podałeś... dalej nie wczytuje ;/
Go to the top of the page
+Quote Post
Riggs
post 4.09.2012, 13:51:56
Post #7





Grupa: Zarejestrowani
Postów: 162
Pomógł: 13
Dołączył: 16.06.2007

Ostrzeżenie: (0%)
-----


A w jakiej metodzie robisz to echo? I czy robisz to w Bootstrapie modułu czy też w głównym Bootstrap aplikacji?
Go to the top of the page
+Quote Post
cholew
post 4.09.2012, 13:56:57
Post #8





Grupa: Zarejestrowani
Postów: 64
Pomógł: 0
Dołączył: 5.01.2007

Ostrzeżenie: (0%)
-----


robię to w gł. bootstrapie aplikacji czyli w application/bootstrap.php
  1. <?php
  2. echo 'test1';
  3. class Bootstrap extends Zend_Application_Module_Bootstrap
  4. {
  5. public function _initTest() {
  6. echo 'test2';
  7. }
  8. }


i nic...
Go to the top of the page
+Quote Post
darko
post 4.09.2012, 13:57:20
Post #9





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


...oraz gdzie wrzuciłeś plik bootstrap w stosunku do reszty plików całego modułu?


--------------------
Nie pomagam na pw, tylko forum.
Go to the top of the page
+Quote Post
cholew
post 4.09.2012, 14:00:55
Post #10





Grupa: Zarejestrowani
Postów: 64
Pomógł: 0
Dołączył: 5.01.2007

Ostrzeżenie: (0%)
-----


tak jak napisałem, znajduje się w application/bootstrap.php
Go to the top of the page
+Quote Post
darko
post 4.09.2012, 14:03:26
Post #11





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Powinien w modules/User (czy jak tam masz nazwany folder z modułami), gdzie User to przykładowa nazwa modułu o nazwie User.
Zobacz, jak to wujek Batman ładnie opisał wink.gif

Ten post edytował darko 4.09.2012, 14:06:41


--------------------
Nie pomagam na pw, tylko forum.
Go to the top of the page
+Quote Post
cholew
post 4.09.2012, 14:06:59
Post #12





Grupa: Zarejestrowani
Postów: 64
Pomógł: 0
Dołączył: 5.01.2007

Ostrzeżenie: (0%)
-----


przeniosłem do modules/default i także nie działa.
A gdzie w takim wypadku powinien znajdować się główny bootstrap?
Go to the top of the page
+Quote Post
Psajkus
post 4.09.2012, 14:20:36
Post #13





Grupa: Zarejestrowani
Postów: 45
Pomógł: 5
Dołączył: 26.06.2011

Ostrzeżenie: (0%)
-----


Główny bootstrap powinien znajdowac sie w application/Bootstrap.php i powien wygladac tak:

  1. class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
  2. {
  3.  
  4. }


W kazdym module mozesz dodac sobie kolejny boottsrap. Np dla modulu default powinien znajdować się w application/modules/default/Bootstrap.php i pownien wygladac tak:
  1. class Default_Bootstrap extends Zend_Application_Module_Bootstrap
  2. {
  3.  
  4. }
  5.  
Go to the top of the page
+Quote Post
CuteOne
post 4.09.2012, 14:23:34
Post #14





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

Ostrzeżenie: (0%)
-----


Nie róbcie mu wody z mózgu.
1. Jeżeli aplikacja jest modułowa Bootstrap powinien się znajdować a application/Bootstrap.php
  1. class Bootstrap extends Zend_Application_Bootstrap_Bootstrap { }

oraz w każdym module
  1. class [nazwa modulu]_Bootstrap extends Zend_Application_Module_Bootstrap { }

2. W application.ini musisz podać ścieżkę i nazwę klasy bootstrapa
Kod
bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"

3. Nazwy metod muszą się rozpoczynać od _init i muszą być publiczne
Go to the top of the page
+Quote Post
irmidjusz
post 4.09.2012, 21:50:24
Post #15





Grupa: Zarejestrowani
Postów: 279
Pomógł: 60
Dołączył: 25.02.2012

Ostrzeżenie: (0%)
-----


Cytat(CuteOne @ 4.09.2012, 15:23:34 ) *
Nie róbcie mu wody z mózgu.
1. Jeżeli aplikacja jest modułowa Bootstrap powinien się znajdować a application/Bootstrap.php
  1. class Bootstrap extends Zend_Application_Bootstrap_Bootstrap { }

oraz w każdym module
  1. class [nazwa modulu]_Bootstrap extends Zend_Application_Module_Bootstrap { }

2. W application.ini musisz podać ścieżkę i nazwę klasy bootstrapa
Kod
bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"

3. Nazwy metod muszą się rozpoczynać od _init i muszą być publiczne


metody _init nie muszą być publiczne, standardowo są protected i jest ok


--------------------
there is much to be learned
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 18.06.2025 - 10:58