⊗ppMVUFmAE 19 of 35 menu

PHP-де MVC қолдану

Бәрін бірлесіп қолдануды қарастырайық. Мысалы, біздің сайтымызда қандай да бір мақалалар-беттер бар делік. Біз бір мақаланы көрсеткіміз келеді немесе барлық мақалаларды көрсеткіміз келеді. Мұны біздің фреймворкте қалай жасауға болатынын қарастырайық.

Дерекқордағы кесте

Алдымен дерекқорда pages кестесін жасайық. Оған id, title және text бағандарын қосамыз. Бұл кестені PhpMyAdmin арқылы қандай да бір деректермен толтырайық.

Модель

Модельді бір жазбаны алу әдісі және барлық жазбаларды алу әдісімен жасайық:

<?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"); } } ?>

Бағдарлау

Сәйкес бағдарлауды жасайық:

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

Баскарушы

Баскарушыны жасайық:

<?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 = 'Барлық беттер тізімі'; $pages = (new Page) -> getAll(); return $this->render('page/all', [ 'pages' => $pages, 'h1' => $this->title ]); } } ?>

Көріністер

one әдісі үшін көрініс жасайық:

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

all әдісі үшін көрініс жасайық:

<h1><?= $h1; ?></h1> <div id="content"> <table> <tr> <th>id</th> <th>title</th> <th>сілтеме</th> </tr> <?php foreach ($pages as $page): ?> <tr> <td><?= $page['id']; ?></td> <td><?= $page['title']; ?></td> <td><a href="/page/<?= $page['id']; ?>/">бетке сілтеме</td> </tr> <?php endforeach; ?> </table> </div>

Практикалық тапсырмалар

Сіздің дерекқорыңызда өнімдер бар делік. Әрбір өнім атауын, бағасын және санын, сипаттамасын қамтиды. Бір өнімді id бойынша және барлық өнімдерді теорияда жасалғанға ұқсас шығарыңыз.

Қазақ
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართული한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Біз сайттың жұмысы, аналитика және персонализация үшін cookie файлдарын қолданамыз. Деректерді өңдеу Құпиялылық саясаты бойынша жүреді.
барлығын қабылдау баптау қабылдамау