⊗ppMVUFmAE 19 of 35 menu

Penerapan MVC di PHP

Mari kita lihat penerapan bersama semua yang telah dipelajari. Misalnya, kita memiliki beberapa artikel-halaman di situs web. Kita ingin menunjukkan satu artikel, atau menunjukkan semua artikel. Mari kita bahas cara melakukannya dalam framework kita.

Tabel di Database

Pertama, buat tabel pages dalam basis data. Tambahkan kolom id, title dan text. Isi tabel ini dengan beberapa data melalui PhpMyAdmin.

Model

Buat model dengan metode untuk mendapatkan satu catatan dan metode untuk mendapatkan semua catatan:

<?php namespace Project\Models; use \Core\Model; class Page extends Model { public function getById($id) { return $this->findOne("SELECT * FROM pages WHERE id=$id"); } public function getAll() { return $this->findMany("SELECT id, title FROM pages"); } } ?>

Routing

Buat routing yang sesuai:

<?php use \Core\Route; return [ new Route('/page/:id', 'page', 'one'), new Route('/pages/', 'page', 'all'), ]; ?>

Controller

Buat controller:

<?php namespace Project\Controllers; use \Core\Controller; use \Project\Models\Page; class PageController extends Controller { public function one($params) { $page = (new Page) -> getById($params['id']); $this->title = $page['title']; return $this->render('page/one', [ 'text' => $page['text'], 'h1' => $this->title ]); } public function all() { $this->title = 'Daftar semua halaman'; $pages = (new Page) -> getAll(); return $this->render('page/all', [ 'pages' => $pages, 'h1' => $this->title ]); } } ?>

View

Buat view untuk metode one:

<h1><?= $h1; ?></h1> <div id="content"> <?= $text; ?> </div>

Buat view untuk metode all:

<h1><?= $h1; ?></h1> <div id="content"> <table> <tr> <th>id</th> <th>title</th> <th>tautan</th> </tr> <?php foreach ($pages as $page): ?> <tr> <td><?= $page['id']; ?></td> <td><?= $page['title']; ?></td> <td><a href="/page/<?= $page['id']; ?>/">tautan ke halaman</td> </tr> <?php endforeach; ?> </table> </div>

Tugas Praktis

Misalkan Anda memiliki produk di basis data. Setiap produk berisi nama, harga, dan kuantitas, deskripsi. Implementasikan tampilan satu produk berdasarkan id dan semua produk serupa seperti yang dilakukan dalam teori.

Indonesia
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan cookie untuk operasi situs, analitik, dan personalisasi. Pemrosesan data dilakukan sesuai dengan Kebijakan Privasi.
terima semua atur tolak