Với sự phát triển nhẩy vọt của công nghệ thông tin hiện nay, Internet ngày càng giữ vai trò quan trọng trong các lĩnh vực khoa học kỹ thuật và đời sống. Dĩ nhiên các bạn đã được nghe nói nhiều về Internet, nói một cách đơn giản, Internet là một tập hợp máy tính kết nối với nhau, là một mạng máy tính toàn cầu mà bất kì ai cũng có thể kết nối bằng máy PC của họ. Với mạng Internet, tin học thật sự tạo nên một cuộc cách mạng trao đổi thông tin trong mọi lĩnh vực văn hóa, xã hội, chính trị, kinh tế…Trong thời đại ngày nay, thời đại mà “người người làm web, nhà nhà lầm web” thì việc có một Website để quảng bá công ty hay một Website cá nhân không còn là điều gì xa xỉ nữa. Thông qua Website khách hàng có thể lựa chọn những sản phẩm mà mình cần một cách nhanh chóng và hiệu quả.Với công nghệ Word Wide Web, hay còn gọi là Web sẽ giúp bạn đưa những thông tin mong muốn của mình lên mạng Internet cho mọi người cùng xem một cách dễ dàng với các công cụ và những ngôn ngữ lập trình khác nhau. Sự ra đời của các ngôn ngữ lập trình cho phép chúng ta xây dựng các trang Web đáp ứng đươc các yêu cầu của người sử dụng.PHP (Personal Home Page) là kịch bản trên phía trình chủ (Server Script) cho phép chúng ta xây
Trang 1BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
Khoa Công Nghệ Thông Tin
Giáo viên hướng dẫn : Th.s Nguyễn Văn Tỉnh
Sinh viên thực hiện : Nhóm 5
Vũ Thị Chinh
Trang 2Mục lục
Lời mở đầu 5
Chương 1 Tìm hiểu ngôn ngữ lập trình PHP 6
1.1 Khái niệm 6
1.2 Tại sao nên dùng PHP 6
1.3 Hoạt động của PHP 7
1.4 Các loại thẻ PHP 7
1.5 Các kiểu dữ liệu: 7
1.6 Biến giá trị 8
1.7 Các giá trị bên ngoài phạm vi PHP 8
1.8 Hằng: PHP định nghĩa sẵn các hằng số 9
1.9 Biểu thức 9
1.10 Các cấu trúc lệnh 9
1.11 Các toán tử 11
Chương 2 Tìm hiểu về mySQL trong PHP 12
2.1 MySQL là gì ? 12
2.2 Khởi động phpMyAdmin 12
2.3 3.Các kiểu dữ liệu trong CSDL MySQL: 13
2.4 4 Các cú pháp trong MySQL: 15
2.4.1 Tạo một csdl: 15
2.4.2 Thêm bảng vào csdl: 16
2.4.3 Thêm một bản ghi vào bảng 18
2.4.4 Phát biểu SELECT: 19
2.4.4.1 Kết hợp phát biểu SELECT với mệnh đề ORDER BY 22
2.4.4.2 Kết hợp phát biểu SELECT với từ khóa LIMIT 23
Chương 3 Tìm hiểu về mô hình MVC trong PHP 25
3.1 Giới thiệu về mô hình MVC trong PHP (Model, Controller, View) 25
3.2 Từng bước thực hành ví dụ về mô hình MVC 25
3.2.1 Controller 26
3.2.2 Model 26
Trang 34.1.1 Giới thiệu chung 27
4.1.1.1 Phạm vi 27
4.1.1.2 Mục đích 27
4.1.2 Mô tả hệ thống 27
4.1.3 Các yêu cầu chung 28
4.1.3.1 Yêu cầu về môi trường 28
4.1.3.2 3.2 Thiết bị và phần mềm 28
4.1.3.3 3.3 Yêu cầu về giao diện 28
4.2 Phân tích thiết kế hệ thống 29
4.2.1 Biểu đồ UseCase 29
4.2.2 Biểu đồ lớp lĩnh vực 29
4.2.3 Phân tích UseCase 30
4.2.3.1 Quản lý danh mục 30
4.2.3.2 3Quản lý khách hàng 33
4.2.3.3 Quản lý sản phẩm 36
4.2.3.4 Sử dụng giỏ hàng 39
4.2.3.5 Đặt hàng 42
4.2.3.6 Tìm kiếm sản phẩm 45
4.2.3.7 Xem TT sản phẩm 47
4.3 Thiết kế CSDL 48
4.3.1 Xác định các thực thể và định danh tương ừng 48
4.3.1.1 Xác định thuộc tính 48
4.3.1.2 Tách liên kết n-n giữa Products và Orders 49
4.3.1.3 Mô hình liên kết thực thể 49
4.3.1.4 Chuyển mô hình thành bản ghi logic 50
4.3.2 Thiết kế CSDL mức vật lý 51
Trang 44.4.6 Giao diện trang Quản lý tài khoản 59
4.4.7 Giao diện quản lý sản phẩm 60
4.4.8 Giao diện quản lý danh mục 60
4.4.9 Giao diện trang quản lý 61
4.4.10 Giao diện quản lý khách hàng 61
4.5 Lập trình tích hợp hệ thống 62
4.6 Kiểm thử hệ thống 62
Tài liệu tham khảo 62
Trang 5Lời mở đầu
Với sự phát triển nhẩy vọt của công nghệ thông tin hiện nay, Internet ngàycàng giữ vai trò quan trọng trong các lĩnh vực khoa học kỹ thuật và đời sống Dĩ nhiên các bạn đã được nghe nói nhiều về Internet, nói một cách đơn giản,
Internet là một tập hợp máy tính kết nối với nhau, là một mạng máy tính toàn cầu mà bất kì ai cũng có thể kết nối bằng máy PC của họ Với mạng Internet, tin học thật sự tạo nên một cuộc cách mạng trao đổi thông tin trong mọi lĩnh vực văn hóa, xã hội, chính trị, kinh tế…
Trong thời đại ngày nay, thời đại mà “người người làm web, nhà nhà lầm web” thì việc có một Website để quảng bá công ty hay một Website cá nhân không còn là điều gì xa xỉ nữa Thông qua Website khách hàng có thể lựa chọn những sản phẩm mà mình cần một cách nhanh chóng và hiệu quả
Với công nghệ Word Wide Web, hay còn gọi là Web sẽ giúp bạn đưa những thông tin mong muốn của mình lên mạng Internet cho mọi người cùng xem một cách dễ dàng với các công cụ và những ngôn ngữ lập trình khác nhau
Sự ra đời của các ngôn ngữ lập trình cho phép chúng ta xây dựng các trang Web đáp ứng đươc các yêu cầu của người sử dụng.PHP (Personal Home Page) là kịchbản trên phía trình chủ (Server Script) cho phép chúng ta xây dựng trang Web trên cơ sở dữ liệu
Với lí do đó, được sự hướng dẫn và giúp đỡ của thầy giáo Thạc Sỹ
Nguyễn Văn Tỉnh, nhóm em đã chọn đề tài: “Tìm hiểu ngôn ngữ lập trình PHP – xây dựng Website bán quần áo trực tuyến” làm đề tài cho bài tập lớn của mình
Trang 6Chương 1 Tìm hiểu ngôn ngữ lập trình PHP
1.1 Khái niệm
PHP là chữ viết tắt của “Personal Home Page” do Rasmus Lerdorf tạo ra năm 1994 Vì tính hữu dụng và khả năng phát triển của nó, PHP bắt đầu được sửdụng trong môi trường chuyên nghiệp và nó trở thành “PHP: Hypertext
Preprocessor”
Thực chất PHP là ngôn ngữ kịch bản nhúng trong HTML, nói một cách đơn giản đó là một trang HTML có nhúng mã PHP PHP có thể được đặt rải rác trong HTML
PHP là ngôn ngữ lập trình được kết nối chặt chẽ với máy chủ, là một côngnghệ phía máy chủ và không phụ thuộc vào môi trường.Đây là hai yếu tố rất quan trọng, thứ nhất, khi nói về công nghệ phía máy chủ, tức là mọi thứ trong PHP đều xảy ra trên máy chủ Thứ hai, chính vì tính chất không phụ thuộc tới môi trường nên cho phép PHP chạy trên hầu hết các hệ điều hành như Windows,Unix,…Đặc biệt, các mã kịch bản PHP viết trên máy chủ này vẫn làm việc bình thường trên máy chủ khác mà không cần chỉnh sửa hoặc chỉnh sửa rấy ít
Khác với ngôn ngữ lập trình, PHP được thiết kế để chỉ thực hiện điều gì
đó sau khi một sự kiện xảy ra
1.1 Tại sao nên dùng PHP
Để thiết kế web động có rất nhiều ngôn ngữ lập trình khác nhau để lựa chọn, mặc dù cấu hình và tính năng khác nhau nhưng chúng vẫn đưa ra những kết quả giống nhau Chúng ta có thể lựa chọn cho mình một ngôn ngữ: ASP, PHP, JAVA,…Vậy tại sao chúng ta nên chọn PHP Rất đơn giản, có những lý
do sau mà khi lập trình web chúng ta không nên bỏ qua sự lựa chọn tuyệt vời này
PHP được sử dụng làm web động vì nó nhanh, dễ dàng, tốt hơn so với cácgiải pháp khác
PHP có khả năng thực hiện và tích hợp chặt chẽ với hầu hết các CSDL có sẵn, tính linh động, bền vững và khả năng phát triển không giới hạn
Đặc biệt PHP là mã ngồn mở do đó tất cả các đặc tính trên đều miễn phí
và chính vì mã nguồn mở sẵn có nên cộng đồng các nhà phát triển web luôn có ýthức cải thiện nó, nâng cao để khắc phục các lỗi trong chương trình này
PHP vừa dễ với người mới sử dụng vừa có thể đáp ứng mọi yêu cầu của lập trình viên chuyên nghiệp, mọi ý tưởng của khách hàng PHP có thể đáp ứng một cách suất sắc
Cách đây không lâu ASP vốn được xem là ngôn ngữ kịch bản phổ biến nhất, vậy mà bây giờ PHP đã bắt kịp ASP, bằng chứng là nó đã có mặt trên 12 triệu website
Trang 71.2 Hoạt động của PHP
Vì PHP là ngôn ngữ của máy chủ nên mã lệnh của PHP sẽ tập trung trênmáy chủ để phục vụ các trang web theo yêu cầu của người dùng thông qua trình duyệt
Khi người dùng truy cập website viết bằng PHP, máy chủ đọc mã lệnh PHP và xử lý chúng theo các hướng dẫn được mã hóa Mã lệnh PHP yêu cầu máy chủ gửi một dữ liệu thích hợp (mã lệnh HTML) đến trình duyệt web.Trình duyệt xem nó như một trang HTML tiêu chuẩn.Như ta đã nói PHP cũng chính làmột trang HTML được nhúng mã PHP có phần mở rộng là HTML Phần mở rộng của PHP được đặt trong thẻ mở <?php và thẻ đóng ?> Khi trình duyệt truy cập vào trang PHP, server sẽ đọc nội dung nội dung file PHP lên và lọc ra các đoạn mã PHP và thực thi các đoạn mã đó, lấy kết quả nhận được từ đoạn mã PHP thay thế vào chỗ ban đầu của chúng trong file PHP, cuối cùng server trả về kết quả cuối cùng là một trang nội dung HTML về cho trình duyệt
1.3 Các loại thẻ PHP
Có 4 loại thẻ khác nhau:
Kiểu short: Thẻ mặc định mà các nhà lập trình PHP thường sử dụng
VD: <? Echo “Well come to PHP” ;?>
Kiểu định dạng XML: Thẻ này có thể sử dụng với văn bản định dạng
XML
VD: <? Php echo “Well come to PHP” ;?>
Kiểu Script: Trong trường hợp bạn sử dụng PHP như một scrip tương tự
khai báo Javascrip hay VBScrip
Chú ý: PHP và HTML là các ngôn ngữ “không nhạy cảm” với khoảng
trắng Khoảng trắng có thể được đặt xung quanh để các mã lệnh rõ ràng hơn Chỉ có khoảng trắng đơn có ảnh hưởng đến sự thể hiện cuae trang web (Nhiều khoảng trắng liên tiếp chỉ thể hiện dưới dạng một khoảng trắng đơn).
Trang 8Xâu: Có hai cách để xác định 1 xâu: Đặt giữa dấu ngoặc kép (“ ”) hoặc đặt
giữa 2 dấu ngoặc (‘ ’)
Mảng:
Mảng 1 chiều: Có thể dùng hàm List() hoặc Array() Có thể dùng các hàm aort(), ksort(), sort(),…để sắp xếp mảng, tùy thuộc vào việc bạn định sắp xếp theo kiểu gì
Một số biến đã được khai báo sẵn
HTTP_GET_VARS: Mảng có giá trị nguyên truyền tới Script thông qua phương thức HTTP GET
HTTP_POST_VARS: Mảng có giá trị nguyên truyền tới Script thông qua phương thức HTTP POST
HTTP_COOKIE_VARS: Mảng có giá trị nguyên truyền tới Script hiện tại bằng HTTP COOKIE
Phạm vi giá trị
PHP coi một biến có một giới hạn Để xác định một biến toàn cục có tác dụng trong hàm ta cần khai báo lại Nếu không có giá trị biến được coi như làcục bộ trong hàm
Trang 9HTML Form: Khi một giá trị gắn với 1 file php qua phương thức POSTVd:
<form action= “top.php” method= “post”>
Name: <input type= “text” name= “name”><BR>
<input type= “Submit”>
</form>
PHP sẽ tạo ra 1 biến $name bao gồm mọi giá trị trong trường Name của Form
PHP có thể hiểu được một mảng một chiều gồm các giá trị trong 1 Form
Vì vậy, bạn có thể nhóm các giá trị liên quan lại với nhau hoặc sử dụng đặc tính này để nhận các giá trị từ 1 đầu vào tùy chọn
1.7 Hằng: PHP định nghĩa sẵn các hằng số
_FILE_: Tên của Script file đang thực hiện
_LINE_: Số dông của mã Script đang thực hiện
_PHP_VERSION: Vertion của php đang chạy
TRUE: Đúng
FALSE: Sai
E_ERROR: Báo hiệu có lỗi
E_PARSE: Báo lỗi sai khi biên dịch
E_NOTICE: Một vài sự kiện có thể là lỗi hoặc không
Có thể định nghĩa một hằng số bằng hàm define()
1.8 Biểu thức
Biểu thức là thành phần quan trọng trong php Một dạng cơ bản nhất của biểu thức bao gồm các biến và hằng số Php hỗ trợ 3 kiểu giá trị cơ bản: Số nguyên, số thực và xâu Ngoài ra còn mảng và đối tượng Mỗi kiểu giá trị này cóthể gán ch các biến hay làm giá trị của hàm
1.9 Các cấu trúc lệnh
a Câu lệnh điều kiện và toán tử
Mỗi câu lệnh điều kiện bao gồm 1 mệnh đề if:
If (điều kiện){
Trang 10PHP còn có một dạng câu lệnh điều kiện nữa là swich.Câu lệnh này rất phù hợp cho việc thay thế nếu câu lệnh if-else quá dài Cú pháp:
Switch {
case ‘giá trị 1’:
// thực hiện lệnh Break;
case ‘giá trị 2’:
// thực hiện lệnh Break;
Default;
// thực hiện lệnh}
b Vòng lặp while
While (biểu thức điều kiện){
// khối lệnh}
Trang 11while(biểu thức điều kiện)
Trang 12Chương 2 Tìm hiểu về mySQL trong PHP
2.1 MySQL là gì ?
SQL(Structed Query Language) Ngôn ngữ truy vấn có cấu trúc: là ngôn ngữ theo chuẩn ANSI để định nghĩa và xử lý dữ liệu trong một cơ sở dữ liệu quan hệ Các phát biểu SQL dùng để truy tìm và cập nhật dữ liệu trong một cơ
sở dữ liệu
MySQL là một trong những hệ thống quản lý cơ sở dữ liệu(CSDL) mã nguồn mở quan hệ SQL sử dụng trên web phổ biến nhất hiện nay
2.2 Khởi động phpMyAdmin
Ở đây, xin được nói về cách sử dụng MySQL qua
phpMyAdmin.phpMyAdmin là một công cụ nguồn mở miễn phí được viết bằng PHP được dùng để xử lý quản trị của MySQL thông qua một trình duyệt web
Trang 13Trên màn hình hiển thị:
1: danh sách các CSDL mặc định và đã tạo trong MySQL
2: các thông số về MySQL đang chạy
3: gồm các thẻ :
Databases : quản lý các CSDL: tạo mới, xóa, sửa,…
SQL : nhập các câu lệnh SQL
Status : mô tả trạng thái hoạt động của MySQL server hiện tại
Users : quản lý người sử dụng Nếu như bạn chưa tạo hay sử dụng dưới danh nghĩa một user nào thì user mặc định của bạn sẽ là root
Export: cho phép lưu dữ liệu vào ổ cứng dưới dạng 1 file text chứa đầy các trình đơn trong đó
Import : chèn các tệp tin sql bên ngoài vào cơ sở dữ liệu
Settings : tùy chỉnh cấu hình cho phpMyAdmin Ở đây mình sẽ chỉ đề cập đến việc sử dụng phpMyAdmin bằng các câu lệnh SQL qua tab SQL
2.3 3.Các kiểu dữ liệu trong CSDL MySQL:
Trang 15Step 1: Chọn thẻ SQL, nhập câu lệnh để tạo cơ sở dữ liệu có tên là helloworld
Step 2: Chọn Go Khi đó ở cột bên trái, sẽ xuất hiện csdl helloworld
Trang 162.4.2 Thêm bảng vào csdl:
Bảng là nơi chứa các đối tượng được lưu trữ trong cơ sở dữ liệu(bao gồm các trường(cột) và các bản ghi(dòng)
Cú pháp:
CREATE TABLE tênbảng ( têncột cácthuộctínhcủacột );
Trong đó các thuộc tính của cột bao gồm
Cách 2: đơn giản chỉ cần click vào tên cơ sở dữ liệu ở cột bên tay trái
Step 2: Chọn thẻ SQL Khi đó, mọi câu lệnh SQL sẽ chỉ có tác dụng trong
cơ sở dữ liệu helloworld đã chọn
Trang 17Step 3: Tạo bảng instance với 3 cột là: id, title và description
Step 4: Click Go, tên bảng instance sẽ hiện ra trong cột bên tay trái
Step 5: Click vào tên bảng instance trong cột bên tay trái, kết quả
Trang 182.4.3 Thêm một bản ghi vào bảng
Sau khi đã tạo ra một bảng CSDL, chúng ta cần thêm dữ liệu cho nó Các
dữ liệu được lưu vào được gọi là các bản ghi(record)
Cú pháp:
INSERT INTO tênbảng (têncột) VALUES (giátrịtươngứng)
Thực hành:
Step 1: Nhập đoạn lệnh INSERT để thêm bản ghi
Do cột id chúng ta để là auto_increment nên mỗi khi nhập dữ liệu mới, nó
sự tự động đánh số, bắt đầu từ số 1 nên chúng ta không cần nhập dữ liệu cho cột id
Step 2: Click Go
Step 3: Click vào tên bảng instance trong cột bên tay trái Ở đây sẽ thấy 1 bản ghi mới đã được insert vào bảng
Trang 19Step 1: Chọn ra tất cả các trường từ bảng instance
Step 2: Click Go Khi đó, sẽ hiển thị ra tất cả các bản ghi có trong bảng instance như hình bên dưới:
Trang 20Phát biểu SELECT với mệnh đề WHERE: Phát biểu SELECT với mệnh đềWHERE dùng để tạo nên điều kiện cần lọc mẩu thông tin theo những yêu cầu nhất định Các phép toán so sánh
Step 3: Nhập đoạn lệnh truy vấn sau
Step 4: Click Go Khi đó sẽ hiển thị ra tất cả các bản ghi có id>=4 như hình bên dưới:
Các phép toán logic
Trang 21Step 5: Chọn lại thẻ SQL, nhập đoạn lệnh truy vấn sau
Step 6: Click Go Khi đó sẽ hiển thị ra các bản ghi có title kết thúc bằng kí
tự ‘a’ như hình bên dưới:
Trang 222.4.4.1 Kết hợp phát biểu SELECT với mệnh đề ORDER BY
Kết hợp phát biểu SELECT với mệnh đề ORDER BY Để có thể sắp xếp dữ liệu đầu ra của một trường theo một thứ tự nhấp định, chúng ta sử dụng phát biểu SELECT kết hợp với mệnh đề ORDER BY
+) Sắp xếp dữ liệu giảm dần:
Cú pháp:
SELECT têntrường FROM tênbảng ORDER BY têntrường DESC
Thực hành:
Step 1: Nhập đoạn lệnh truy vấn sau
Step 2: Click Go Khi đó, tất cả các bản ghi sẽ được hiển thị theo thứ tự giảm dần của id
Trang 23Step 2: Click Go Khi đó sẽ hiển thị tất cả bản ghi được sắp xếp theo thứ tự tăng dần của title
2.4.4.2 Kết hợp phát biểu SELECT với từ khóa LIMIT
Kết hợp phát biểu SELECT với từ khóa LIMIT: Để giới hạn số mẩu tin được lấy ra từ cơ sở dữ liệu, ta dùng phát biểu SELECT với từ khóa LIMIT
Cú pháp
SELECT têntrường FROM tênbảng LIMIT N,M
Trong đó,
N là bản ghi được bắt đầu để lấy (là các số nguyên, được bắt đầu từ 0)
M là tổng số bản ghi sẽ được lấy ra
Thực hành:
Step 1: Nhập đoạn lệnh truy vấn sau
Trang 24Step 2: Click Go Khi đó sẽ hiển thị ra 4 bản ghi bắt đầu từ bản ghi số 1 Hiển thị như hình:
Bên trên là 1 vài câu lệnh cơ bản trong MySQL, ngoài ra còn có rất nhiều câulệnh và hàm hữu ích khác với cách chạy tương tự như các câu lệnh trên Ví dụ:1)Phát biểu Update : dùng để cập nhật hoặc thay đổi các dòng trong 1 bảng
Cú pháp: UPDATE tênbảng SET têncột = giátrịmới WHERE têncột=
giátrị
2)Phát biểu Delete: dùng để xóa một hay nhiều dòng trong 1 bảng
Cú pháp: DELETE FROM tênbảng WHERE têncột= giátrị
3)Cú pháp hàm: SELECT hàm(cột) FROM tênbảng
Hàm AVG(column): trả về giá trị trung bình của dữ liệu trong 1 cột của bảngHàm MAX(column): trả về giá trị lớn nhất trong 1 cột của bảng
Hàm MIN(column): trả về giá trị nhỏ nhất trong 1 cột của bảng
Hàm SUM(column): trả về tổng của các giá trị trong 1 cột của bảng
Trang 25Chương 3 Tìm hiểu về mô hình MVC trong PHP
3.1 Giới thiệu về mô hình MVC trong PHP (Model, Controller, View)
tiên trong Smalltalk, sau đó được sử dụng phổ biến trong ngôn ngữ lập trình Java.Hiện nay, đã có hơn hàng chục PHP framework dựa trên mô hình này
một ứng dụng web ra làm 3 thành phần đảm nhiệm chức năng tách biệt, thuận tiện cho việc xử lý và bảo trì
thực thể từ cơ sở dữ liệu như mysql, sql server, postresSQL,… đồng thời chưa các logic được thực thi bởi ứng dụng
một format nào đó theo ý đồ của lập trình viên Cách sử dụng của View tương
tự như các module templates thường thấy trong các ứng dụng web phổ biến nhưWordPress, Joomla,…
tác với nhau Controller nhận request từ client, sau đó gọi các model để thực hiện các hoạt động được yêu cầu và gửi ra ngoài View View sẽ chịu trách nhiệm format lại data từ controller gửi ra và trình bày dữ liệu theo 1 định dạng đầu ra (html)
Hình minh họa cách mô hình MVC hoạt động
3.2 Từng bước thực hành ví dụ về mô hình MVC
Đầu tiên, trong thư mục gốc của website ở local (với wamp thì là www,
Trang 263.2.1 Controller
Đầu tiên chúng ta sẽ làm việc với controller, đây là nơi đầu tiên nhận các yêu cầu (requests), phân tích yêu cầu, khởi tạo và gọi model, sau đó nhận các hồi đáp (response) từ model và gửi ra các lớp giao diện (view) Trong thực tế Controller được gọi từ điểm đầu vào của ứng dụng là tập tin index.php Tập tin này sẽ giao toàn bộ các yêu cầu gửi từ client cho controller xử lý
3.2.2 Model
Model đại diện cho dữ liệu và logic của ứng dụng, thường hay gọi là business logic Model có trách nhiệm :
– Thêm, xóa sửa dữ liệu,…
– Là nơi thực thi logic nghiệp vụ của ứng dụng Đối với những bạn mới
trong Controller hoăc View
3.2.3 View
View chịu trách nhiệm định đạng lại dữ liệu được truyền ra từ model Dữ liệu được truyền ra có thể có nhiều định dạng khác nhau tùy vào cách người lập trình xử lý như là xml, json, array,
Lưu ý là bạn đừng nên nhập nhằng, khó hiểu giữa view và template.Khi nhận được dữ liệu với định dạng nhất định từ hệ thống, tiếp tục view sẽ làm thaotác chuyển đổi dữ liệu thành một cấu trúc html cho người dùng thấy được.Thôngthường 1 controller sẽ chỉ định gửi dữ liệu đến 1 view cụ thể.Chẳng hạn với công việc hiển thị tài khoản người dùng, thì Controller “display account” sẽ gọi đến lớp view “display account” Tại đây, lớp view sẽ sử dụng 1 template có sẵn trong hệ thống để render ra các trang html Mẫu template có sẵn này xử dụng lại những phần cố định của website như header, footer, menu,
Các ví dụ trên của mình chính là cái nền cơ bản, cách hoạt động giống với các MVC Framework phổ biến hiện nay như CI, Zend,…Hy vọng qua bài viết này, các bạn có cái nhìn rõ ràng hơn về mô hình MVC và học các framework nhanh hơn Kết thúc bài viết mình sẽ liệt kê một số ưu điểm của MVC :
Model và View tách biệt, nên ứng dụng linh hoạt hơn, dễ bảo trì hơn các website truyền thống, một nùi code trong 1 file
Model và View có thể coi là tách biệt, độc lập Có thể 1 máy chủ A chỉ làm nhiệm vụ xử lý Model, back-end, một máy chủ B chỉ làm nhiệm vụ xử lý giao diện, front-end,
Trang 27Chương 4 Thiết kế website bán quần áo trực tuyến
4.1 Khảo sát hệ thống
4.1.1 Giới thiệu chung
Đây là một website bán và giới thiệu sản phẩm của cửa hàng đến người tiêu dùng với các chi tiết mặt hàng với giá cả chính xác
4.1.2 Mô tả hệ thống
Yêu cầu trang Web Hệ thống có 2 phần:
Thứ nhất : Dành cho khách hàng: Khách hàng là những người có nhu cầu
mua sắm hàng hóa, họ sẽ tìm kiếm các mặt hàng cần thiết từ hệ thống và đặt mua các mặt hàng này Vì thế phải có các chức năng sau:
- Hiển thị danh quần áo các mặt hàng của cửa hàng để khách hàng xem, lựa chọn và mua
- Khách hàng xem các thông tin tin tức mới, khuyến mãi trên trang web
- Sau khi khách hàng chọn và đặt hàng hàng trực tiếp thì phải hiện lên đơn hàng
để khách hàng có thể nhập thông tin mua hàng và xem hoá đơn mua hàng
Thứ hai : Dành cho người quản trị: Người làm chủ ứng dụng có quyền kiềm
soát mọi hoạt động của hệ thống Người này được cấp username và
password để đăng nhập hệ thống thực hiện chức năng của mình:
- Chức năng cập nhật, sửa, xoá các mặt hàng, loại hàng, nhà sản xuất, tin tức.(phải kiểm soát được hệ thống) Nó đòi hỏi sự chính xác
Trang 28 Mục tiêu của hệ thống
Hệ thống cho phép khách hàng cũng như người quản trị tương tác với hệ thống qua giao diện web thân thiện và dễ dàng sử dụng, khách hàng có thểxem thông tin hàng, chọn, đặt hàng và cách thức thanh toán.Ngoài ra hệ thống còn cung cấp khả năng bảo mật cao
4.1.3 Các yêu cầu chung
4.1.3.1 Yêu cầu về môi trường
- Chạy được trên mọi trình duyệt web
- Chạy được trên mọi hệ điều hành, nền tảng khác nhau
- Cơ sở dữ liệu dùng MySQL
4.1.3.2 3.2 Thiết bị và phần mềm
- Máy tính có thể thiết kế được web
- Hệ quản trị cơ sở dữ liệu MySQL
- Cài đặt Xampp
- Phần mềm thiết kế web : Dreamwear, sothink, flast…
4.1.3.3 3.3 Yêu cầu về giao diện
- Giao diện của hệ thống phải đáp ứng được tiêu chí quan trọng nhất của
dự án là giới thiệu sản phẩm, giao dịch trực tuyến thuận tiện và đảm bảo an toàn
- Các điều khiển trên trang web cần quen thuộc, dễ thao tác với người dùng Thông tin hình ảnh bao quát, đẹp và dễ dàng lựa chọn tìm kiếm
- Hiển thị thông tin chi tiết khi khách hàng lựa chọn
- Nội dung thông tin hình ảnh động Kiểu của giao diện thay đổi giúp hạn chế sự đơn điệu
- Tên các trường thông tin, chức năng phải thống nhất toàn bộ giao diện
- Hiển thị danh sách các mặt hàng theo từng loại
- Hiển thị hàng hoá khách hàng đã chon mua
- Hiển thị thông tin khách hàng
- Quản lý đơn đặt hàng
- Cập nhật hàng hoá, nhà sản xuất, loại hàng, tin tức
- Xử lý đơn hàng
Trang 294.2 Phân tích thiết kế hệ thống
4.2.1 Biểu đồ UseCase
xemTTSP timKiemTTSP
Trang 304.2.3 Phân tích UseCase
4.2.3.1 Quản lý danh mục
a Biểu đồ lớp tham gia ca sử dụng
Categories product_cat_id category_name category_parent category_description ThemDM() SuaDM() XoaDM() layDM()
C_QLDM
themDM() suaDM() xoaDM() layDM()
QuanLy
(from Use Case View)
W_QLDM product_cat_id category_name category_parent category_description themDM() suaDM() xoaDM() layDM() W_DangNhap
admin_usename
admin_password
KiemTraDN()
Trang 31Tra loi() Hien man hinh QLDM Chon them
themDM( ) Tra loi Hien man hinh them Nhap TTDM
themDM( ) Luu TT
ThemBr( ) Tra loi Tra loi
Hien thong bao Chon sua
suaDM( )
Tra loi Hien man hinh s ua Sua TTDM
Luu TT
suaDM( )
SuaBr( ) Tra loi Tra loi
Hien thong bao Chon xoa
layBr( ) Tra loi
xoaDM( ) Tra loi Hien thi thong bao xac nhan Xac nhan xoa
xoaDM( )
XoaBr( ) Tra loi Tra loi
Trang 32Chon sua
Chon luu
Chon 1 danh muc
Chon them moi
HeThong
Trang 33Customers customer_id customer_name customer_sex customer_DOB customer_address customer_telephone customer_email customer_created customer_description Them() Sua() Xoa() lay()
C_QLKH
themKH() suaKH() xoaKH() layKH()