⊗ppPmSDDb 442 of 447 menu

Hệ thống website dựa trên cơ sở dữ liệu trong PHP

Bây giờ chúng ta hãy tạo một hệ thống website, trong đó nội dung của các trang sẽ không được lưu trữ trong các file, mà trong cơ sở dữ liệu. Giả sử trong cơ sở dữ liệu của chúng ta có một bảng như thế này:

pages
id title content
1 title1 <div> content1 </div>
2 title2 <div> content2 </div>
3 title3 <div> content3 </div>

Giả sử chúng ta muốn nhận các trang của mình theo các URL dạng /page/1, trong đó số sẽ đại diện cho id của trang mà chúng ta muốn lấy.

Hãy bắt đầu triển khai. Đầu tiên, trong một file riêng biệt hãy tạo kết nối đến cơ sở dữ liệu và kết nối file này với file của chúng ta:

<?php $link = require 'connect.php'; ?>

Lấy URL được yêu cầu:

<?php $url = $_SERVER['REQUEST_URI']; ?>

Sử dụng biểu thức chính quy để tách URL thành các phần:

<?php preg_match('#/page/(\d+)#', $url, $match); ?>

Ghi id từ nhóm bắt giữ (capture group) vào một biến:

<?php $id = $match[1]; ?>

Thực hiện truy vấn đến cơ sở dữ liệu, thông qua id lấy trang được yêu cầu:

<?php $query = "SELECT * FROM pages WHERE id=$id"; $res = mysqli_query($link, $query) or die(mysqli_error($link)); $page = mysqli_fetch_assoc($res); ?>

Lấy file template:

<?php $layout = file_get_contents('layout.php'); ?>

Trong file template, thực hiện chèn tiêu đề và nội dung:

<?php $layout = str_replace('{{ title }}', $page['title'], $layout); $layout = str_replace('{{ content }}', $page['content'], $layout); ?>

Gửi trang web đã được lắp ráp đến trình duyệt:

<?php echo $layout; ?>

Tổng hợp tất cả lại với nhau và chúng ta có đoạn mã sau:

<?php require 'connect.php'; $url = $_SERVER['REQUEST_URI']; preg_match('#/page/(\d+)#', $url, $match); $id = $match[1]; $query = "SELECT * FROM pages WHERE id=$id"; $res = mysqli_query($link, $query) or die(mysqli_error($link)); $page = mysqli_fetch_assoc($res); $layout = file_get_contents('layout.php'); $layout = str_replace('{{ title }}', $page['title'], $layout); $layout = str_replace('{{ content }}', $page['content'], $layout); echo $layout; ?>

Hãy triển khai hệ thống đã được mô tả. Kiểm tra hoạt động của nó.

Tiếng Việt
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ʻzbek
Chúng tôi sử dụng cookie để vận hành trang web, phân tích và cá nhân hóa. Việc xử lý dữ liệu được thực hiện tuân theo Chính sách bảo mật.
chấp nhận tất cả tùy chỉnh từ chối