Tải bản đầy đủ - 0 (trang)
XÂY DỰNG PHẦN MỀM

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

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

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 toà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 



-



Bước 5: Lấy ra phần tóm tắt, ảnh đại diện, nội dung sản phẩm. 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 đó 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 thì lấy hình ảnh đầu tiên tìm thấy



-



được trong phần nội dung sản phẩm.

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

Bước 7: Sau khi đã lấy được tồn bộ thơng tin sản phẩm và lưu vào cơ sở dữ

liệu thì hiển thị thông báo đã lấy được bao nhiêu sản phẩm trong tổng số sản

phẩm lấy được. Có bao nhiêu sản phẩm trùng nhau.

3.3 Giao diện chương trình

3.3.1 Dành cho người dùng

3.3.1.1 Giao diện trang chủ

Người dùng truy cập vào trang chủ Website của đường link

http://tintonghop.dichbao.com/. Giao diện chính được thiết kế đơn giản, dễ sử

dụng, các chủ để được sắp xếp một cách khoa học.



 48 



Hình 3.3 Giao diện trang chủ website

3.3.1.2 Giao diện thơng tin sản phẩm



 49 



Hình 3.4 Giao diện thông tin sản phẩm

3.3.1.3 Giao diện tổng hợp tin tức



 50 



Hình 3.5 Giao diện tổng hợp tin tức

3.3.1.4 Giao diện phần liên hệ



Hình 3.6 Giao diện liên hệ



 51 



3.3.2 Dành cho người quản trị



3.3.2.1 Đăng nhập trang quản trị



Hình 3.7 Giao diện đăng nhập trang quản trị

Truy cập vào đường dẫn http://tintonghop.dichbao.com/quantri/. Người

dùng nhập tên đăng nhập và mật khẩu và bấm nút đăng nhập để truy cập trang

quản trị của website. Người dùng có thể tích vào ơ nhớ mật khẩu để lưu lại

mật khẩu (khơng khuyến cáo nếu dùng chung máy tính). Mật khẩu được lưu

trong vòng 1 tháng, nếu quá thời hạn đó người dùng phải nhập lại tài khoản

đăng nhập của mình (để đảm bảo tính bảo mật của website, chống hacker xâm

nhập).

3.3.2.2 Quản lý danh mục

a. Danh sách danh mục



 52 



Hình 3.8 Giao diện danh sách danh mục

Trong phần danh sách danh mục, người dùng bấm vào thao tác [Sửa] của

danh mục đó. Giao diện sửa danh mục hiện lên, người dùng nhập vào thông

tin và bấm nút



để lưu lại. Các mục nhập vào giống với thêm mới



danh mục.

Xóa 1 danh mục: Người dùng bấm vào thao tác [Xóa] của danh mục đó.

Xóa 1 hay nhiều danh mục: Người dùng đánh dấu tích vào những danh

mục cần xóa, bấm nút



, xuất hiện cảnh báo xác nhận, bấm Ok



để xóa. Người dùng có thể chọn tồn bộ danh mục của 1 trang hiển thị bằng

cách bấm vào dấu tích trên cùng (cùng hàng với ID, Tên danh mục, v.v.) để

chọn tất cả.

Xóa tồn bộ danh mục: Người dùng bấm vào nút



để xóa



tồn bộ danh mục (có trong loại danh mục đã chọn), bấm Ok để xác nhận thao

tác.

Sắp xếp danh mục

-



Người dùng bấm vào phần tiêu đề cột cần sắp xếp. Những cột có

dấu mũi tên 2 chiều



là cột khơng được sắp xếp, bấm 1 lần để sắp



 53 



xếp theo thứ tự tăng dần, bấm thêm lần nữa để sắp xếp giảm dần.

Hình mũi tên lên



chỉ những cột đang sắp xếp tăng dần, và ngược



lại, hình mũi tên xuống



chỉ những cột đang sắp xếp giảm dần.



Những cột còn lại (khơng có dấu mũi tên) là những cột khơng được

phép sắp xếp.

Chọn số lượng danh mục hiển thị: Người dùng có thể thay đổi số lượng

danh mục hiển thị trên một trang bằng cách lựa chọn trong ComboBox



Phân trang: Người dùng bấm vào trang cần xem, những nút bị mờ đi

không bấm được.

b. Thêm danh mục

Trong menu “Quản lý danh mục”, người dùng bấm vào

trong phần menu bên trái để thêm mới một danh mục. Người dùng cũng có

thể chọn nhanh thao tác thêm danh mục bằng cách bấm vào biểu tượng thêm

mới

Người dùng nhập vào thông tin vào và bấm nút

mục. Những mục có dấu * bắt buộc phải nhập.



 54 



để lưu danh



Hình 3.9 Giao diện thêm danh mục mới

Tên danh mục: Tên hiển thị trong trang quản trị và trong menu trang

người dùng (*).

Loại danh mục: Loại danh mục đó, nếu là danh mục tin tức thì chọn

“Lưu danh sách tin tức”, nếu là danh mục văn bản thì chọn “Lưu văn bản”.

Danh mục cha: Danh mục thực sự chứa nó, được hiển thị trong trang

quản trị. Chọn “Khơng có danh mục cha” nếu là danh mục gốc.

Vị trí hiển thị: Vị trí hiển thị thực sự của danh mục đó, được hiển thị

trong trang quản trị. Chọn “Menu chính” nếu muốn hiển thị trong menu chính

của trang người dùng (ở dưới phần tìm kiếm); Chọn “Menu cuối trang” nếu

muốn hiển thị trong menu cuối trang của trang người dùng; Chọn “Menu

chính + Menu cuối trang” nếu muốn hiển thị trên cả 2 menu; và chọn “Không

hiển thị trên menu” nếu không muốn hiển thị trên menu.

Thứ tự sắp xếp: Thứ tự sắp xếp danh mục đó trong trang quản trị, không

bắt buộc nhập.

Trang thái: Trạng thái của danh mục, chọn “Hoạt động” nếu sử dụng

danh mục đó, chọn “Khóa” nếu muốn khóa danh mục lại. Khi danh mục đã bị

khóa, danh mục đó sẽ khơng được hiển thị trên menu, cho dù người dùng có

chọn hiển thị trên menu hay không. Nếu người dùng truy cập vào danh mục

đã khóa, trang báo lỗi 404 (khơng tìm thấy trang này) sẽ xuất hiện.

Keyword: Từ khóa hỗ trợ SEO (*).

Description: Nội dung mô tả hỗ trợ SEO, không bắt buộc nhập.

Danh mục cha trên Menu: Danh mục ảo chứa nó, được hiển thị trong

Menu trang người dùng. Nếu chọn khơng hiển thị trên menu thì khơng cần

thiết phải nhập vào mục này.



 55 



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

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

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

×