Tải bản đầy đủ - 0 (trang)
4 Thiết kế cơ sở dữ liệu

4 Thiết kế cơ sở dữ liệu

Tải bản đầy đủ - 0trang

- Tin: mỗi thơng tin có một mã loại thơng tin để phân biệt với các thông

tin khác. Xác định tính duy nhất của thơng tin

- Sản phầm: mỗi sản phẩm có một mã id để phân biệt với các loại sản

phẩm khác.

Xuất phát từ quá trình xác định các thực thể như trên ta có thể xây dựng

một CSDL có tên là: khoaluan_nhuquynh, CSDL gồm có 5 bảng sau:

Bảng 2.1 Quản lý tin tức (tbtintuc)

Tên Trường

Tintuc_id

Taikhoan_id

Tintuc_tieude

Danhmuc_id

Tintuc_tomtat

Tintuc_noidung

Tintuc_hinhanh

Tintuc_date



Kiểu dữ

liệu



Kích

thước



Ràng buộc



int



11



Primary

key



Int

Varchar

Int

Varchar

mediumtext

Varchar



11

255

11

500

150



timestamp



Tintuc_trangthai



tinyint



4



Tintuc_keyword



Varchar



255



Tintuc_des



Varchar



500



Ghi chú

Khóa chính phân

biệt giữa các tin

Lưu id tài khoản

Lưu tiêu đề tin

Lưu id danh mục

Lưu tóm tắt ngắn

Lưu nội dung tin

Lưu đường dẫn ảnh

Lưu thời gian đăng

tin

Trạng thái kích hoạt

hay khóa tin

Lưu giá trị thẻ

metakeyword

Lưu giá trị thẻ

metadescription



Bảng 2.2 Quản lý thơng tin sản phẩm (tbsanpham)

Tên Trường



Kiểu dữ

liệu



Kích

thước



Sanpham_id



int



11



Danhmuc_id



int



11



Sanpham_tieude



varchar



250



Sanpham_giaban



bigint



20



 41 



Ràng

buộc

Primary

key



Ghi chú

Khóa chính phân

biệt các sản phẩm

với nhau

Lưu id danh mục

Lưu tiêu đề sản

phẩm

Lưu giá bản sản



Sanpham_hinhanh

Sanpham_tinhtrang

Sanpham_soluong

Sanpham_xuatxu

Sanpham_mota



varchar

tinyint

smallint

varchar

mediumtext



150

4

6

100



Sanpham_keyword



Varchar



250



Sanpham_des



varchar



250



Sanpham_date



Timestamp



Sanpham_trangthai



tinyint



4



phẩm

Lưu đường dẫn ảnh

Tình trạng sản phẩm

Số lượng sản phẩm

Xuất xứ sản phẩm

Mô tả về sản phẩm

Lưu giá trị thẻ meta

keyword

Lưu giá trị thẻ meta

description

Lưu thời gian đăng

sản phẩm

Trạng thái hiện hoặc

không hiện sản

phẩm



Bảng 2.3 Quản lý danh mục (tbdanhmuc)

Kiểu dữ

liệu



Kích

thước



int



11



Danhmuc_tieude



varchar



50



Danhmuc_duongdan



varchar



150



Danhmuc_noidung

Danhmuc_parent



text

Int



11



Danhmuc_keyword



varchar



200



Danhmuc_des



varchar



250



Danhmuc_date



timestamp



Tên Trường

Danhmuc_id



Danhmuc_trangthai



tinyint



4



Danhmuc_thutu

Danhmuc_vitri



int

tinyint



11

4



 42 



Ràng

Ghi chú

buộc

Primary

Lưu id danh mục

key

Lưu tên danh mục

được hiển thị trên

menu

Lưu đường dẫn trên

URL để phục vụ cho

SEO

Lưu nội dung

Danh mục cha

Lưu thẻ meta

keyword

Lưu thẻ

metadescription

Lưu thời gian

Trạng thái hiển thị

hoặc không

Thứ tự hiển thị

Vị trị hiển thị



Bảng 2.4 Quản lý thông tin tài khoản (tbtaikhoan)

Tên Trường



Kiểu dữ

liệu



Kích

thước



Taikhoan_id



int



11



Taikhoan_user

Taikhoan_pass

Taikhoan_email

Taikhoan_hoten

Taikhoan_avatar

Taikhoan_gioitinh

Taikhoan_ngaysinh

Taikhoan_diachi

Taikhoan_phone



Varchar

Varchar

Varchar

Varchar

Varchar

tinyint

date

Varchar

Varchar



30

32

250

150

200

4



Taikhoan_mota



Text



Taikhoan_date

Taikhoan_trangthai

Taikhoan_quyen



datetime

tinyint

tinyint



250

50



4

5



 43 



Ràng

buộc

Primay

key



Ghi chú

Mã tài khoản

Tài khoản quản trị

Mật khẩu đăng nhập

Mail của quản trị

Họ tên

Hình ảnh đại diện

Giới tính

Ngày sinh

Địa chỉ

Số điện thoại

Giới thiệu về người

quản trị

Ngày đăng nhập

Trạng thái hiển thị

Quyền của tài khoản



Bảng 2.5 Quản lý nội dung bình luận (tbbinhluan)

Tên Trường



Kiểu dữ

liệu



Kích

thước



Ràng

buộc

Primary

key



Binhluan_id



int



11



Tintuc_id



int



11



Taikhoan_id



int



11



Binhluan_noidung



Text



Binhluan_parent



int



Binhluan_date



timestamp



Binhluan_trangthai



tinyint



11



4



Ghi chú

Khóa chính phân

biệt các bình

luận

Khóa chính phân

biệt các tin tức

Phân biệt tài

khoản đăng nhập

Nội dụng bình

luận

Phân mức bình

luận

Thời gian bình

luận

Trạng thái hiển

thị



CHƯƠNG 3

XÂY DỰNG PHẦN MỀM

3.1 Mơ hình MVC

3.1.1 Định nghĩa

Mơ hình MVC (Model - View - Controller) là một kiến trúc phần mềm

hay mơ hình thiết kế được sử dụng trong kỹ thuật phần mềm. Nó giúp cho các

nhà phát triển tách ứng dụng của họ ra 3 thành phần khác nhau Model, View

và Controller. Mỗi thành phần có một nhiệm vụ riêng biệt và độc lập với các

thành phần khác.

3.1.2 Các thành phần trong MVC

Đây là hình ảnh minh họa cho mơ hình MVC:



 44 



Hình 3.1 Mơ hình MVC

Model

Đây là thành phần chứa tất cả các nghiệp vụ logic, phương thức xử lý,

truy xuất database, đối tượng mô tả dữ liệu như các Class, hàm xử lý...

View

Đảm nhận việc hiển thị thông tin, tương tác với người dùng, nơi chứa

tất cả các đối tượng GUI như textbox, images...Hiểu một cách đơn giản, nó là

tập hợp các form hoặc các file HTML.

Controller

Giữ nhiệm vụ nhận điều hướng các yêu cầu từ người dùng và gọi đúng

những phương thức xử lý chúng... Chẳng hạn thành phần này sẽ nhận request

từ url và form để thao tác trực tiếp với Model.

MVC làm việc như thế nào?

Luồng sự kiện được xử lý trong MVC:

- User tương tác với View, bằng cách click vào button, user gửi yêu cầu đi.



 45 



- Controller nhận và điều hướng chúng đến đúng phương thức xử lý ở Model.

- Model nhận thông tin và thực thi các yêu cầu.

- Khi Model hoàn tất việc xử lý, View sẽ nhận kết quả từ Model và hiển thị lại

cho người dùng.



Hình 3.2 Cơ chế làm việc của mơ hình MVC

3.1.3 Ưu điểm và nhược điểm của MVC





Ưu điểm: Thể hiện tính chun nghiệp trong lập trình, phân tích thiết

kế. Do được chia thành các thành phần độc lập nên giúp phát triển ứng







dụng nhanh, đơn giản, dễ nâng cấp, bảo trì…

Nhược điểm

Đối với dự án nhỏ việc áp dụng mơ hình MC gây cồng kềnh, tốn thời



gian trong quá trình phát triển. Tốn thời gian trung chuyển dữ liệu của các

thành phần.

3.2 Kỹ thuật tổng hợp thông tin từ nhiều nguồn

3.2.1 Kỹ thuật lấy tin tức thông qua RSS





Phương pháp lấy tin qua RSS:

Sử dụng file thư viện “simple_html_dom.php” để lấy ra các thơng tin



như tiêu đề, tóm tắt, nội dung, ảnh đại diện... Thông qua RSS dựa vào class

hoặc id của các thẻ chứa nó (ví dụ: thẻ chứa nội dung của trang VnExpress là

thẻ
mang class là fck_detail)



 46 



-



Các bước lấy tin qua RSS:

Bước 1: Khai báo thư viện “simple_html_dom.php”.

Bước 2: Khởi tạo đối tượng DOMDocument để lưu và lấy ra tin tức.

Bước 3: Lặp tồn bộ thẻ (thẻ chứa tiêu đề, tóm tắt, ảnh đại diện, ngày



-



đăng tin...) trong file RSS.

Bước 4: Lấy ra tiêu đề tin rồi dựa vào tiêu đề tin để kiểm tra tin tức có trùng



-



nhau khơng, nếu trùng tin thì bỏ qua.

Bước 5: Lấy ra phần tóm tắt, ảnh đại diện, nội dung tin tức. Nội dung tin được







lấy bằng cách: Sử dụng đường dẫn trong thẻ rồi lưu vào 1 đối tượng

với định dạng HTML, sau đó tìm kiếm thẻ chứa nội dung trong đối tượng đó

(ví dụng như VnExpress là div[class=fck_detail]) rồi lưu lại phần nội dung

chứa trong thẻ đấy. Hình ảnh được lấy từ thuộc tính src của thẻ trong

phần tóm tắt (thẻ < description>). Nếu khơng tìm thấy hình ảnh trong phần

tóm tắt (ví dụ: trang 24h.com.vn khơng có hình ảnh trong phần tóm tắt) thì lấy

-



hình ảnh đầu tiên tìm thấy được trong phần nội dung tin tức.

Bước 6: Lưu các thông tin lấy được vào bảng tbtintuc trong cơ sở dữ liệu.

Bước 7: Sau khi đã lấy được toàn bộ tin tức và lưu vào cơ sở dữ liệu thì hiển

thị thơng báo đã lấy được bao nhiêu tin tức trong tổng số tin lấy được. Có bao

nhiêu tin trùng

3.2.2 Kỹ thuật lấy sản phẩm không qua RSS

Phương pháp lấy sản phẩm không qua RSS: Sử dụng file thư viện

“simple_html_dom.php” để lấy ra các thông tin như tiêu đề, tóm tắt, nội dung,

ảnh đại diện... Dò từng trang sản phẩm, dựa vào class hoặc id của các thẻ

chứa nó.



-



Các bước lấy sản phẩm không qua RSS:

Bước 1: Khai báo thư viện “simple_html_dom.php”.

Bước 2: Khởi tạo đối tượng DOMDocument để lưu và lấy ra sản phẩm.

Bước 3: Lặp toàn bộ thẻ (thẻ chứa tiêu đề, tóm tắt, ảnh đại diện, ngày



-



đăng tin...).

Bước 4: Lấy ra tiêu đề sản phẩm rồi dựa vào tiêu đề sản phẩm để kiểm tra sản

phẩm có trùng nhau khơng, nếu trùng sản phẩm thì bỏ qua.



 47 



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

4 Thiết kế cơ sở dữ liệu

Tải bản đầy đủ ngay(0 tr)

×