PHP da CMS asoslari

Zamonaviy dunyoda raqamlar ko'rinishidagi manzillar /page/1 chiroyli deb hisoblanmaydi. Ko'proq chiroyli, sahifa uchun uning raqami emas, balki sahifa sarlavhasiga mos keladigan matnli nom ko'rsatilganda, masalan, shu tarzda: /page/my-first-page.

Bunday manzillar CMS (insonga tushunarli URL) deb ataladi. CMS mavjudligi foydalanuvchi uchun unga hech narsa aytmaydigan id raqamlaridan qulayroqdir. Bundan tashqari, qidiruv tizimlari CMS tufayli bizning saytimiz pozitsiyalarini oshiradilar.

Sahifa nomiga mos keladigan URLning bir bo'lagi slug (slug) deb ataladi. Keling, ma'lumotlar bazamizga sahifalarimizga slug ustunini qo'shaylik:

pages
id slug title content
1 my-first-page title1 <div> content1 </div>
2 my-second-page title2 <div> content2 </div>
3 my-third-page title3 <div> content3 </div>

Keling, endi bizning dasturimizni id o'rniga slug bilan ishlash uchun qayta qilaylik. Buning uchun regulyar ifodani tuzatamiz:

php<?php
  preg_match('#/page/([a-z0-9_-]+)#', $url, $match);
  $slug = $match[1];
?>

Va sahifa qidiruv shartida id o'rniga slug ni ko'rsatamiz:

php<?php
  $query = "SELECT * FROM pages WHERE slug='$slug'";
?>
Задание 1

Sayt dasturingizni CMS bilan ishlash uchun qayta qiling. Uning ishlashini sinab ko'ring.