Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][KO 3.2] Prosta strona z podstroną
Forum PHP.pl > Forum > Przedszkole
jg44
Witam,
próbuję się nauczyć Kohany 3 (i delikatnie mówiąc idzie mi to jak z kamienia). Na początek chcę zrobić prostą stronę wyświetlającą jakiś dowlony tekst, następnie stworzyć podstronę, do której możnaby przejść (na razie bez hiperłącza, tylko wpisując jej adres 'na sztywno' w przeglądarce). Problem w tym, że strona główna mi nawet działa, (adres: http://localhost/example) ale ta podstrona już nie chce się otwierać (po wpisaniu adresu: http://localhost/example/page/about jest błąd od serwera, że 'nie można wyświetlić strony - brak pliku'). Wszystko wygląda tak:
kontroler welcome.php (application/classes/controller/welcome.php)
  1. <?php defined('SYSPATH') or die('No direct script access.');
  2.  
  3. class Controller_Welcome extends Controller_Template {
  4.  
  5. public function action_index()
  6. {
  7. View::bind_global('site_name', $site_name);
  8. $site_name = 'Moja strona';
  9.  
  10. $content = View::factory('welcome')
  11. ->bind('random', $random);
  12. $random = rand(1,10);
  13.  
  14. $this->template->content = $content;
  15. }
  16.  
  17. } // End Welcome


Kontroler page.php, który ma być odpowiedzialny za otworzenie upragnionej podstrony (application/classes/controller/page.php)
  1. <?php defined('SYSPATH') or die('No direct script access.');
  2.  
  3. class Controller_Page extends Controller_Template {
  4.  
  5. public function action_about()
  6. {
  7. View::set_global('site_name', 'About');
  8. $content = View::factory('pages/about');
  9.  
  10. $this->template->content = $content;
  11. }
  12.  
  13. } // End


Szablon strony (application/views/template.php)
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <title><?=$site_name?></title>
  6. </head>
  7. <body>
  8. <?=$content?>
  9. </body>
  10. </html>


Działająca strona główna:
  1. <h2><? echo isset($site_name) ? ($site_name) : 'Kohana 3'; ?></h2>
  2. <p>Liczba losowa: <?=$random?></p>

No i niechcąca się otworzyć podstrona:
  1. <h2>About</h2>
  2. <p>Tutaj jakiś tekst</p>

Wszystko robię na podstawie książki "Kohana 3.0". Ktoś mógłby pomóc i powiedzieć, co robię źle?
Z góry dziękuję
pozdrawiam
pedro84
A routing?
jg44
base_url jest dobrze wpisany (bo strona główna działa)
Domyślny kotroler:
  1. Route::set('default', '(<controller>(/<action>(/<id>)))')
  2. ->defaults(array(
  3. 'controller' => 'welcome',
  4. 'action' => 'index',
  5. ));
skowron-line
W pliku bootstrap.php
  1. Kohana::init(array(
  2. 'base_url' => '/example',
  3. 'index_file' => '',
  4. 'errors' => (kohana::$environment == kohana::PRODUCTION),
  5. 'caching' => true,
  6. 'profile' => (kohana::$environment == kohana::PRODUCTION)
  7. ));

i w .htaccess to samo.
Albo ustaw sobie Virtualhosta
jg44
Ok, dziękuję, działa wink.gif
.htaccess miałem źle skonfugurowany.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.