Cytat(Vomit @ 2006-02-25 19:31:31)
Mam pytanie: po co sa puste konstruktory? Jest jakas roznica od tego czy jest pusty konstruktor czy w ogole go nie ma?
Wiekszego znaczenia to nie ma:
Ale dreklaruje je jako PUBLIC zeby bylo wiadomo jak bedzie tworzo ny obiekt.
Pozatym z doswiadczenia wiem, ze zazwyczaj przydaja sie
np jak chce dodac WebRequest to w pliku
WebController.php<?php
public function __construct() {
//- Zalaczanie dodatkˇw :)
include DIR_FW.'/WebRequest.php';
}
?>
i wszytko smiga ładnie
Jezeli mamy konstruktor PROTECTED/PRIVATE to musimy postawic jak w przypadku konstruktora WebRequest, czyli wymuszam tam ze ma byc tylko jeden obiekt:)
Cytat
Może głupie pytanie, ale jestem nie kumaty pewnie: Jak w ogole odpalić ten skrypt? Wyswietla mi sie tylko napis: Index a niżej 'hwao' i nic. Mam php5 itp. A katalogi i scieżki są raczej dobre.
Wszytko jest dobrze wiec pokoleji plik
index.php <?php
//-- Aplikacja
$Application = new WebController();
$Application->setAction( $_GET['action'], 'index' );
?>
W ostaniej linijce opokazanej tutajjest wybierany model jaki ma zostac uruchomiony, poniewaz system rozpozna ze w $_GET['action'] nic nie ma, badz tez wskazana akcja nie istnieje zostaje odpalona domyslna (czyli 2 parametr tej metody).
Odpala sie
model/index.phpTam w klasie Index masz metode Perform
<?php
public function Perform() {
$this->Assign( 'text', 'hwao' );
return true;
}
?>
Ktora poprostu wysyla dane do Szablonu ( $text = 'hwao' ) jako ze zadnego specjalnego wybierania szablonu nie zrobilismy zostaje odpalony plik
templates/index.tplw ktorym mamy
<h3>Index</h3>
Rezultaty tego widzisz na ekranie
To jest prosty krzyklad jezeli chcilabym tam np wydobyc newsy to np robisz tak
model/news.php
<?php
class News extends Model {
/**
* Uruchomienie Modelu, analiza danych
*
* @return unknown
*/
public function Perform() {
$sSql = 'Select * From `news`';
$aNews[] = $a;
}
$this->AssignByRef( 'aNews', $aNews );
return true;
}
}
?>
Teraz zgodnie z zalozeniami robimy takie cos, nie wybieramy w modelu szablonnu (mozemy to zrobic poprzez danie $this->sTemplate = 'jakis_plik.tpl' wtedy odpalony zostanie
templates/jakis_plik.tpl)
Wiec toworzymy plik templates/news.tpl
i w nim np
<?php foreach( $aNews As $iKey => $aVal ) { ?>
Autor:
<?php echo $aVal['autor']; ?><br />
<?php } ?>
i mamy w wyswietlanie newsa
Oczywiscie do Widoku mozna podpiac np smarty wtedy szablony beda jeszcze prostrze