PHẦN 1. CƠ SỞ LÝ LUẬN
1. Đặt vấn đề
Cùng với sự phát triển không ngừng về kỹ thuật máy tính và mạng điện tử,
công nghệ thông tin cũng được những công nghệ có đẳng cấp cao và lần lượt chinh
phục hết đỉnh cao này đến đỉnh cao khác. Mạng Internet là một trong những sản
phẩm có giá trị hết sức lớn lao và ngày càng trở nên một công cụ không thể thiếu,
là nền tảng chính cho sự truyền tải, trao đổi thông tin trên toàn cầu.
Giờ đây, mọi việc liên quan đến thông tin trở nên thật dễ dàng cho người sử
dụng: chỉ cần có một máy tính kết nối internet và một dòng dữ liệu truy tìm thì gần
như lập tức… cả thế giới về vấn đề mà bạn đang quan tâm sẽ hiện ra, có đầy đủ
thông tin, hình ảnh và thậm chí đôi lúc có cả những âm thanh nếu bạn cần…
Bằng internet, chúng ta đã thực hiện được nhiều công việc với tốc độ nhanh
hơn và chi phí thấp hơn nhiều so với cách thức truyền thống. Chính điều này, đã
thúc đẩy sự khai sinh và phát triển của thương mại điện tử và chính phủ điện tử
trên khắp thế giới, làm biến đổi đáng kể bộ mặt văn hóa, nâng cao chất lượng cuộc
sống con người.
Hiện tại trên thị trường , các website cho xem phim trực tuyến và download
phim trực tuyến rất nhiều tuy nhiên một websitebán đĩa trực tuyến thì lại rất hiếm.
Mà nếu xem phim và download phim sẽ rất tốn dung lượng, điều này là hầu như
không thể đối với những người sử dụng gói dịch vụ Internet trả tiền theo dung
lượng.
Với đồ án này, chúng em xin được trình bày một cách thức quản lý website
giúp cho những người quản trị dễ dàng trong việc phân quyền quản lý, thay đổi,
cập nhật thông tin trang web, cũng như quản lý hiệu quả khách hàng và các đơn đặt
hàng trên mạng.
2. Mục tiêu đồ án
Nắm vững kiến thức, tìm hiểu và nghiên cứu ngôn ngữ lập trình PHP và
MySQL - một kịch bản trình chủ mã nguồn mở được sử dụng để phát triển ứng
1
dụng thương mại điện tử kết hợp với cơ sở dữ liệu MySQL rất mạnh mẽ và rất
thịnh hành hiện nay.
quan tâm.
3.3. Lập trình tương tác cơ sở dữ liệu
3.3.1. Tìm hiểu về AppServ
* Giới thiệu về AppServ
AppServ được phát triển bởi một công ty của Thái Lan – Phanupong
Panyadee (AppServ Foundation). AppServ bao gồm các dịch vụ như Apache, PHP,
MySQL và tất cả chỉ cài đặt trong 1 phút. Lần đầu tiên phân phối cung cấp vào
09/10/2001. Nhiều người sử dụng AppServ và phát triển ở khắp mọi nơi trên thế
giới. Ban đầu trang web cung cấp AppServ tiếng Thái và tiếng Anh và hiện nay đã
lên đến 11 thứ tiếng. Trong tương lai trang web sẽ cung cấp cho các ngôn ngữ trên
thế giới.
* Gói dịch vụ của AppServ
AppServ có đầy đủ tính năng cần thiết cho một máy chủ như Apache,
MySQL, PHP, phpMyAdmin. Bạn có thể thiết lập trong 1 tới 2 phút.
Gói AppServ bao gồm - Apache
- PHP
- MySQL
- PhpMyAdmin
* Các bước cài đặt AppServ
Bước 1: Chạy file appserv-win32-2.5.4.exe để tiến hành cài đặt. Cửa sổ
Welcome của màn hình Setup hiện ra. Nhấp Next để tiếp tục (xem hình 1.1)
3
Hình 1.1: Cửa sổ Setup appserv-win32-2.5.4
Bước 2: Chọn thư mục cài đặt. Bạn giữ nguyên mặc định và nhấp Next để
tiếp tục (xem hình 1.2).
Hình 1.2: Chọn thư mục cài đặt
Bước 3: Chọn chế độ cài đặt.
Để biết các thành phần nào được cài vào máy tính, bạn đánh dấu
chọn Custom và nhấp Next để tiếp tục (xem hình 1.3).
4
(xem hình 1.9).
Hình 1.9: Khởi động dịch vụ Apache & MySQL.
Bước 8: Kiểm tra kết quả.
7
Mở Internet Explorer, gõ địa chỉ http://localhost/ nếu thấy trang web như
hình 1.10 tức là bạn đã cài thành công appserv.
Hình 1.10: Kiểm tra kết quả
Sau khi cài xong appserv 2.5.4 máy tính của bạn sẽ có các chương trình sau:
- Apache Web Server Version 1.3.34
- PHP Script Language Version 4.4.1
- MySQL Database Version 5.0.16
- phpMyAdmin Database Manager Version 2.5.7-pl1
3.3.2. Ngôn ngữ PHP (Hypertext Preprocessor)
* Tổng quan về PHP
Là một ngôn ngữ lập trình kịch bản hay một loại mã lệnh, chủ yếu được
dùng để phát triển các ứng dụng viết cho máy chủ, mã nguồn mở, dùng cho mục
đích tổng quát. Nó rất thích hợp với web và có thể dễ dàng nhúng vào trang
HTML. Do được tối ưu hóa cho các ứng dụng web, tốc độ nhanh, nhỏ gọn, cú
pháp giống C và Java, dễ học và thời gian xây dựng sản phẩm tương đối
ngắn hơn so với các ngôn ngữ khác nên PHP đã nhanh chóng trở thành
một ngôn ngữ lập trình web phổ biến nhất thế giới.
8
* Cấu trúc cơ bản PHP
PHP cũng có thể bắt đầu và kết thúc giống với ngôn ngữ HTML, chỉ khác
đối với PHP chúng ta có nhiều cách để thể hiện.
Cách 1: Cú pháp chính
<?php mã lệnh php?>
Cách 2: Cú pháp ngắn gọn
<? Mã lệnh php ?>
Cách 3: Cú pháp giống với ASP
Một số ví dụ về biến :
b) Khái niệm về hằng trong PHP.
Nếu biến là cái có thể thay đổi được thì ngược lại hằng là cái chúng ta không
thể thay đổi được. Hằng trong PHP được định nghĩa bởi hàm define theo cú pháp:
define (string tên_hằng, giá_trị_hằng ).
Cũng giống với biến hằng được xem là hợp lệ thì chúng phải đáp ứng 1 số
yếu tố :
+ Hằng không có dấu "$" ở trước tên.
+ Hằng có thể truy cập bất cứ vị trí nào trong mã lệnh
+ Hằng chỉ được phép gán giá trị duy nhất 1 lần.
+ Hằng thường viết bằng chữ in để phân biệt với biến
10
Ví dụ :
c) Khái niệm về chuỗi:
Chuỗi là một nhóm các kỹ tự, số, khoảng trắng, dấu ngắt được đặt trong các
dấu nháy.
Ví dụ:
‘Huy’
"welcome to VietNam"
Để tạo 1 biễn chuỗi, chúng ta phải gán giá trị chuỗi cho 1 biến hợp lệ.
Ví dụ:
$fisrt_name= "Nguyen";
$last_name= ‘Van A’;
Để liên kết 1 chuỗi và 1 biến chúng ta thường sử dụng dấu "."
Ví dụ:
d) Kiểu dữ liệu trong PHP
Các kiểu dữ liệu khác nhau chiếm các lượng bộ nhớ khác nhau và có thể
được xử lý theo cách khác nhau khi chúng được theo tác trong 1 script.
Trong PHP chúng ta có 6 kiểu dữ liệu chính như sau :
11
{
Hành động thực thi
}while(điều kiện)
Ví dụ:
c- For():
Phép lặp này là phép toán gộp các tham số. Giúp người lập trình giảm thiểu
thời gianphải khai báo biến và các tham số khi thực thi việc lặp dữ liệu.
Cú pháp:
For( giá trị ; điều kiện ; biến tăng hoặc giảm)
{ Hành động }
Ví dụ:
- Biểu thức switch case:
Là biểu thức sử dụng để giảm thiểu quá trình xử lý dữ liệu nếu có quá nhiều
phép toán if else.
Cú pháp:
Switch(biến)
{
Case giá trị 1: Hành động; Break;
14
…………
Case giá trị N: Hành động; Break;
Default: Hành động; Break;
}
Ví dụ:
* Xử lý giá trị form trong PHP
Một trong những ứng dụng quan trọng của PHP đó là giúp tương tác xử lý
dữ liệu trên form của người sử dụng. Nhằm mục đích giúp cập nhật thông
tin một cách linh động và dễ dàng quản lý chung hơn bởi sự kết hợp tuyệt
vời của cơ sở dữ liệu. Tuy nhiên để làm được điều ấy PHP yêu cầu form
phải đáp ứng 1 số quy định chung đặt ra.
//Thuc thi
return giatri;
16
}
- Gọi lại hàm trong PHP:
PHP cung cấp nhiều hàm cho phép triệu gọi lại file. Như hàm
include("URL đến file"), require("URL Đến file").
Ngoài hai cú pháp trên còn có include_once(), require_once(). Hai hàm này
cũng có trách nhiệm gọi lại hàm. Những chúng sẽ chỉ gọi lại duy nhất 1 lần
mà thôi.
3.3.3. Cơ sở dữ liệu MySQL
MySQL là một phần mềm quản trị CSDL mã nguồn mở, miễn phí nằm trong
nhóm LAMP (Linux - Apache - MySQL - PHP)
MySQL là một phần mềm quản trị CSDL dạng server-based (gần tương
đương với SQL Server của Microsoft). MySQL quản lý dữ liệu thông qua các
CSDL, mỗi CSDL có thể có nhiều bảng quan hệ chứa dữ liệu. MySQL có cơ chế
phân quyền người sử dụng riêng, mỗi người dùng có thể được quản lý một hoặc
nhiều CSDL khác nhau, mỗi người dùng có một tên truy cập (user name) và mật
khẩu tương ứng để truy xuất đến CSDL. Khi ta truy vấn tới CSDL MySQL, ta phải
cung cấp tên truy cập và mật khẩu của tài khoản có quyền sử dụng CSDL đó. Nếu
không, chúng ta sẽ không làm được gì cả.
3 . Mục đích của hệ thống
2.1. Về trang web
Xây dựng một trang web có một giao diện thân thiện, dễ sử dụng và có bố cục
cũng như trang trí phù hợp với một trang web bán hàng.
Đưa vào trang web nhiều thể loại phim. Đưa các thông tin chi tiết nhất về
phim như đạo diễn, nước sản xuất, thể loại phim, diễn viên, nội dung phim và giá
cả.
Xây dựng hệ thống tìm kiếm hiệu quả qua những thông tin chi tiết của bộ
phim.Tích hợp tính năng đếm số thành viên đăng ký vào trang web.
giá tiền, nội
dung phim....
Chọn thể loại
phim hay phim
cần xem
Truy nhập vào
CSDL để lấy
thông tin
Hiển thị thông tin
cho người sử
dụng
Tìm kiếm thông
tin
Tìm kiếm hàng
hoá theo từ khoá
Nhập từ khoá
cần tìm kiếm
Truy nhập vào
CSDL để tìm
kiếm lấy thông
tin
Hiển thị thông tin
tìm kiếm được
Đăng ký làm
member nếu có
nhu cầu
Đăng ký
member
Nhập thông tin
cá nhân theo
và password
Hiển thị đăng
nhập thành
công nếu lỗi
thông báo lỗi
và quay về
trang login
Thoát khỏi tài
khoản đăng
nhập
Thoát khỏi tài
khoản
Ấn nút logout
Tìm kiếm và
thay đổi trong
CSDL
Hiển thị
logout thành
công
Đặt hàng,
mua hàng
Đặt, mua sản
phẩm mà
khách hàng
muốn mua
PhimKH
muốn mua
Kiểm tra kho
hàng trong
CSDL, xử lý
phim
Lưu thay đổi
vào trong
CSDL
Hiển thị thay
đổi thành công
Quản lý
member
Admin xem
danh sách
user, và có
thể block user
nếu cần thiết
Block user,
unblock user
Lưu thông tin
vào CSDL
Hiển thị thông
báo thành công
Quản lý tin
tức
Admin có
quyền thêm,
chính sửa hay
xoá các tin
tức trên web
Update,
insert, delete
tin tức
Lưu thay đổi
hệ
Truy xuất
CSDL và lấy
các thông tin
liên hệ
Hiển thị các
thông tin liên
hệ đã xắp xếp
(đã xử lý hay
chưa xử lý)
2. Sơ đồ thiết kế logic và hệ thống
2.1. Sơ đồ thiết kế logic
21
2.2. Sơ đồ hệ thống
3. Thiết kế dữ liệu
Admin
22
Khách Hàng
Đặt Hàng Đĩa CD
Loại Đĩa CD
Client
Server
Database
Chitiet_hoadon
Comment
Daodien
Dienvien
Feedback
Hoadon
23