Bước 1: Tạo file đặt tên là db.class.php nằm trong thư mục config trong folder Project tên tùy ý có nội dung:
<?php
class Db
{
//Biến kết nối CSDL
protected static $connection;
//Hàm khởi tạo kết nối
public function connect(){
$connection = mysqli_connect("localhost","root","","demo_lap3");
mysqli_set_charset($connection,'utf8');
// Check connection
if (mysqli_connect_errno()){
echo "Kết nối CSDL thất bại: " . mysqli_connect_error();
}
return $connection;
}
//Hàm thực hiện xử lý câu lệnh truy vấn
public function query_execute($queryString){
//Khởi tạo kết nối
$connection = $this -> connect();
//Thực hiện execute truy vấn, query là hàm của thư viện mysqli
$result = $connection -> query($queryString);
$connection -> close();
return $result;
}
//Hàm thực hiện trả về một mảng danh sách kết quả
public function select_to_array($queryString){
$rows = array();
$result = $this -> query_execute($queryString);
if($result==false) return false;
// vòng lập while dùng để xuất mảng dữ liệu ra từng phần tử
while($item = $result -> fetch_assoc()){
$rows[] = $item;
}
return $rows;
}
}
?>
Tại function connect:
– localhost: là host server của bạn
– root: là username đăng nhập
– password rỗng là mặc định khi cài Xampp
– demo_lap3: là tên của database, tùy bạn đặt
Bước 2: Tạo thư mục có tên là Entities chứa các lớp đối tượng tương ứng trong CSDL
Tạo file đặt tên product.class.php có nội dung như sau:
<?php
require_once("config/db.class.php");
class Product{
public $productID;
public $productName;
public $cateID;
public $price;
public $quantity;
public $description;
public $picture;
public function __construct($pro_name, $cate_id, $price, $quantity, $desc, $picture){
$this -> productName = $pro_name;
$this -> cateID = $cate_id;
$this -> price = $price;
$this -> quantity = $quantity;
$this -> description = $desc;
$this -> picture = $picture;
}
//Lưu sản phẩm
public function save(){
// Khởi tạo đối tượng $db với class Db từ file db.class.php
$db = new Db();
// Tạo biến $sql để insert sản phẩm, chạy biến này ở dưới
$sql = "INSERT INTO product (ProductName, CateID, Price, Quantity, Description, Picture) VALUES
('$this->productName',
'$this->cateID',
'$this->price',
'$this->quantity',
'$this->description',
'$this->picture')";
// query_execute là function từ class Db
$result = $db -> query_execute($sql);
// Trả về kết quả
return $result;
}
// Danh sách sản phẩm
public static function list_product(){
$db = new DB();
$sql = "SELECT * FROM product";
// select_to_array là hàm của class Db, dùng để xuất ra mảng
$rs = $db -> select_to_array($sql);
return $rs;
}
}
?>
Bước 3: Tạo 2 file header.php và footer.php tại thư mục gốc
Nội dung file header.php:
<!DOCTYPE html>
<html>
<head>
<title>HƯỚNG ĐỐI TƯỢNG PHP</title>
<!-- Unicode Tiếng Việt -->
<meta charset="utf-8">
<meta name="author" content="HuynhThaiHung.com" />
<!-- Tập tin định nghĩa css -->
<link href="site.css" rel="stylesheet" />
</head>
<body>
<div id="wrapper" class="container">
<div class="row">
<div class="col-md-12">
<div class="header">
<h2>Project training - Xây dựng website bán hàng</h2>
</div>
Nội dung file footer.php:
</div>
</div>
</div>
<div id="wrapper" class="container">
<footer>
Quay lại <a href="/demo/lap3">Trang chủ</a><br/>
© 2019 - Huynh Thai Hung
</footer>
</div>
</body>
</html>
Tiếp theo tạo file site.css để định dạng cho website có nội dung:
html{
font-family: sans-serif;
}
body{
margin: 0px;
}
h1,h2,h3,h4,h5,h6{
margin: 25px 0 15px 0;
}
h2{
font-size: 17px;
font-weight: bold;
}
#wrapper{
width: 80%;
margin: 0 auto;
}
.row{
width: 100%;
display: inline-block;
margin-bottom: 5px;
}
.header{
color: green;
text-transform: uppercase;
}
.lbltitle{
width: 20%;
float: left;
}
.lblinput, .lbloutput{
width: 80%;
float: left;
}
.submit{
width: 50%;
float: left;
}
input, textarea{
width: 300px;
}
button{
width: 307px;
}
Bài tiếp theo: Lap 5, sẽ thực hiện 2 chức năng Thêm Sản Phẩm và Danh Sách Sản Phẩm.
Xem thêm: