Mallien käsittelyn harjoittelu MVC:ssä PHP:ssä
Oletetaan, että tietokannassasi on taulu page
joillakin tietueilla. Luodaan malli Page
kahdella metodilla. Ensimmäinen metodi
saa yhden tietueen sen id:n perusteella,
ja toinen metodi saa taulukon tietueista
alueelta id:
<?php
namespace Project\Models;
use \Core\Model;
class Page extends Model
{
public function getById($id)
{
return $this->findOne("SELECT * FROM page WHERE id=$id");
}
public function getByRange($from, $to)
{
return $this->findMany("SELECT * FROM page WHERE id>=$from AND id<=$to");
}
}
?>
Työskennellään nyt mallimme kanssa ohjaimessa:
<?php
namespace Project\Controllers;
use \Core\Controller;
use \Project\Models\Page; // yhdistämme mallimme
class PageController extends Controller
{
public function test() {
$page = new Page; // luomme mallin olion
$data = $page->getById(3); // saadaan tietue, jonka id=3
var_dump($data);
$data = $page->getById(5); // saadaan tietue, jonka id=5
var_dump($data);
$data = $page->getByRange(2, 5); // tietueet, joiden id on 2-5
var_dump($data);
}
}
?>
Luo tietokantaasi taulu page,
täytä se tiedoilla. Tarkista teorian
kuvatun koodin toiminta.