Tạo file index.php tại thư mục gốc, thêm nội dung như sau:
<?php
include_once("header.php");
?>
<ul>
<li>
<a href="product-list.php">Danh sách sản phẩm</a>
</li>
<li>
<a href="product-add.php">Thêm sản phẩm</a>
</li>
</ul>
<?php
include_once("footer.php");
?>
include_once là hàm để copy code từ file được truyền vào, và chỉ được truyền 1 lần
Mở browser để kiểm tra với đường dẫn: http://localhost/tên-project
Tạo trang thêm sản phẩm
– Tại thư mục gốc thêm file đặt tên product-add.php với nội dung:
<?php
require_once("entities/product.class.php");
require_once('entities/category.class.php');
if(isset($_POST["btnsubmit"])){
//Lấy giá trị từ form
$productName = $_POST["txtname"];
$cateID = $_POST["txtcateid"];
$price = $_POST["txtprice"];
$quantity = $_POST["txtquantity"];
$description = $_POST["txtdesc"];
$picture = $_FILES["txtpic"];
//Khởi tạo đối tượng product
$newProduct = new Product($productName, $cateID, $price, $quantity, $description, $picture);
// Lưu xuống CSDL
$result = $newProduct -> save();
if(!$result){
//Truy vấn lỗi
header("Location: product-add.php?status=failure");
}else{
header("Location: product-add.php?status=inserted");
}
}
?>
<?php require 'header.php'; ?>
<?php
if(isset($_GET["status"])){
if ($_GET["status"] == 'inserted') {
echo "<h2>Thêm sản phẩm thành công.</h2>";
}else{
echo "<h2>Thêm sản phẩm thất bại.</h2>";
}
}
?>
<!-- Form Thêm sản phẩm -->
<form method="post">
<!-- Tên sản phẩm -->
<div class="row">
<div class="lbltitle">
<label>Tên sản phẩm</label>
</div>
<div class="lblinput">
<input type="text" name="txtname" value="<?php echo isset($_POST["txtname"]) ? $_POST["txtname"] : "" ?>">
</div>
</div>
<!-- Mô tả sản phẩm -->
<div class="row">
<div class="lbltitle">
<label>Mô tả sản phẩm</label>
</div>
<div class="lblinput">
<textarea type="text" name="txtdesc" cols="21" rows="10" value="<?php echo isset($_POST["txtdesc"]) ? $_POST["txtdesc"] : "" ?>"></textarea>
</div>
</div>
<!-- Số lượng sản phẩm -->
<div class="row">
<div class="lbltitle">
<label>Số lượng sản phẩm</label>
</div>
<div class="lblinput">
<input type="number" name="txtquantity" value="<?php echo isset($_POST["txtquantity"]) ? $_POST["txtquantity"] : "" ?>">
</div>
</div>
<!-- Giá sản phẩm -->
<div class="row">
<div class="lbltitle">
<label>Giá sản phẩm</label>
</div>
<div class="lblinput">
<input type="number" name="txtprice" value="<?php echo isset($_POST["txtprice"]) ? $_POST["txtprice"] : "" ?>">
</div>
</div>
<!-- Loại sản phẩm -->
<div class="row">
<div class="lbltitle">
<label>Loại sản phẩm</label>
</div>
<div class="lblinput">
<select name="txtcateid">
<option value="" selected>-- Chọn loại --</option>
<?php $cates = Category::list_category() ?>
<?php foreach ($cates as $item) { ?>
<option value="<?php echo $item['CateID'] ?>"><?php echo $item['CategoryName'] ?></option>
<?php } ?>
</select>
<!-- <input type="number" name="txtcateid" value="<?php echo isset($_POST["txtcateid"]) ? $_POST["txtcateid"] : "" ?>"> -->
</div>
</div>
<!-- Loại sản phẩm -->
<div class="row">
<div class="lbltitle">
<label>Url Hình ảnh</label>
</div>
<div class="lblinput">
<input type="file" name="txtpic" accept=".PNG,.GIF,.JPG,.JPGEG">
</div>
</div>
<div class="row">
<div class="lbltitle">
Click thêm
</div>
<div class="submit">
<button type="submit" name="btnsubmit">Thêm sản phẩm</button>
</div>
</div>
</form>
<!-- Footer -->
<?php require 'footer.php'; ?>
Hàm isset() để kiểm tra sự tồn tại của biến truyền vào. Sử dụng rất nhiều trong lập trình PHP.
Xem thử có lỗi gì xảy ra không?
Đường dẫn: http://localhost/tên-project/product-add.php
Tạo trang danh sách sản phẩm
– Tại thư mục gốc thêm file đặt tên product-list.php với nội dung:
<?php
require_once('entities/product.class.php');
?>
<?php
include_once('header.php');
$prods = Product::list_product();
?>
<div class="container">
<div class="row">
<div class="col-md-12">
<table border="1" class="table">
<tr>
<td>Hình</td>
<td>Tên SP</td>
<td>Loại</td>
<td>Giá</td>
<td>Số lượng</td>
<td>Mô tả</td>
</tr>
<?php
foreach ($prods as $item) {
?>
<tr>
<td><?php echo $item['Picture']?></td>
<td><?php echo $item['ProductName']?></td>
<td><?php echo $item['CateID']?></td>
<td><?php echo $item['Price']?></td>
<td><?php echo $item['Quantity']?></td>
<td><?php echo $item['Description']?></td>
</tr>
<?php } ?>
</table>
</div>
</div>
</div>
<?php
include_once('footer.php');
?>
Biến $item[‘key’] là mảng được trả về của function select_to_array() trong class Db
Lưu ý: ‘key’ là tên của cột trong bảng product, trong một mảng có 2 phần tử là key và value
Đường dẫn: http://localhost/tên-project/product-list.php
hoặc click: Danh sách sản phẩm ngoài trang chủ
Như vậy là bạn đã hoàn thành 2 chức năng Thêm Sản Phẩm và Danh Sách Sản Phẩm.
Xem thêm: