⊗ppMVUFmAE 19 of 35 menu

MVC-ის გამოყენება PHP-ში

მოდით შევხედოთ ყველა შესწავლილი რამის ერთად გამოყენებას. მაგალითად, დავუშვათ, რომ ჩვენს საიტზე გვაქვს გარკვეული სტატიები-გვერდები. ჩვენ გვსურს ან ერთი სტატიის ჩვენება, ან ყველა სტატიის ჩვენება. მოდით განვიხილოთ, როგორ გავაკეთოთ ეს ჩვენს ფრეიმვორქში.

ცხრილი ბაზაში

დასაწყისისთვის, შევქმნათ ცხრილი 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 ]); } } ?>

წარმოდგენები (Views)

შევქმნათ წარმოდგენა მეთოდისთვის 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
ვებსაიტის მუშაობის, ანალიტიკისა და პერსონალიზაციისთვის ვიყენებთ ქუქი-ფაილებს. მონაცემთა დამუშავება ხდება Კონფიდენციალურობის პოლიტიკის შესაბამისად.
ყველას მიღება პარამეტრები უარყოფა