Tải bản đầy đủ (.pdf) (106 trang)

BAOCAODATN WEBSITE BÁN SÁCH

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.66 MB, 106 trang )

TRƯỜNG ĐẠI HỌC ĐIỆN LỰC
KHOA CÔNG NGHỆ THÔNG TIN
-------***------

ĐỒ ÁN TỐT NGHIỆP
ĐỀ TÀI:
XÂY DỰNG WEBSITE QUẢN LÝ BÁN SÁCH

Sinh viên thực hiện

: NGUYỄN THÙY MIÊN

Mã sinh viên

: 1781310153

Giảng viên hướng dẫn

: TS.LÊ MẠNH HÙNG

Ngành

: CÔNG NGHỆ THÔNG TIN

Chuyên ngành

: CÔNG NGHỆ PHẦN MỀM

Lớp

: D12CNPM2



Khóa

: 2017 – 2022

Hà Nội, tháng 1 năm 2022


PHIẾU CHẤM ĐIỂM
Sinh viên thực hiện:

STT

1

Họ tên

Nguyễn Thùy Miên

Nội dung

Điểm

Chữ ký

- Xây dựng cơ sở dữ
liệu.
- Xây dựng giao diện.
- Tích hợp chức năng
đăng

nhập
bằng
google.
- Tích hợp chức thanh
tốn online.
- Xây dựng các chức
năng cho hệ thống.

Giảng viên chấm:

Họ tên
Giảng viên 1:

Giảng viên 2:

Giảng viên 3:

Chữ ký

Ghi chú


LỜI CẢM ƠN

Trước hết, em xin được chân thành gửi lời cảm ơn tới các thầy cô giáo trong
trường Đại học Điện lực nói chung và các thầy cơ trong khoa Cơng Nghệ Thơng
Tin nói riêng đã tận tình giảng dạy, truyền đạt cho em những kiến thức và kinh
nghiệm quý báu trong suốt những năm học tập và rèn luyện. Em xin được gửi lời
cảm ơn sâu sắc đến cơ TS. Lê Mạnh Hùng đã hết lịng giúp đỡ, hướng dẫn và chỉ
dạy tận tình trong quá trình em thực hiện đồ án tốt nghiệp.

Cuối cùng, em xin được gửi lời cảm ơn chân thành tới gia đình, bạn bè đã
quan tâm, động viên, đóng góp góp ý kiến và giúp đỡ em trong quá trình học tập,
nghiên cứu và hoàn thành đồ án tốt nghiệp

Hà Nội, ngày 15 tháng 01 năm 2022
Sinh viên thực hiện

Nguyễn Thùy Miên


LỜI MỞ ĐẦU

Công nghệ thông tin đang ngày một phát triển mạnh mẽ hơn. Do nhu cầu
trao đổi thông tin ngày càng tăng và nhu cầu sử dụng sản phẩm cơng nghệ cao
nhiều tính năng, cấu hình cao, chất lượng tốt, kiểu dáng mẫu mã đẹp, phong phú
nên nhà cung cấp phải luôn cải thiện, nâng cao những sản phẩm của mình. Do đó
việc xây dựng các website đang là một ngành công nghiệp mới đầy tiềm năng và
hứa hẹn nhiều sự phát triển vượt bậc của ngành khoa học kỹ thuật. Cùng với sự
phát triển mạnh mẽ của xu hướng lập trình các website. Các nghiệp vụ trên website
hiện nay rất đa dạng và phong phú. Hiện nay, việc sở hữu một chiếc điện thoại
thơng minh khơng cịn là một điều quá khó với nhiều người, khi ai cũng có cho
riêng mình một chiếc điện thoại thơng minh thì việc sử dụng nó để phục vụ cho
cuộc sống là một điều tất yếu. Một trong những framework tốt để xây dựng chương
trình. Và trong báo cáo này, em xin chọn đề tài “Xây dựng website quản lý bán
sách” Trong quá trình làm báo cáo cũng như xây dựng, sẽ cịn rất nhiều nhược
điểm, thiếu sót, rất mong được thầy cô chỉ dẫn và bổ sung để bản báo cáo này được
hoàn thiện hơn.
Em xin cảm ơn!

1



MỤC LỤC
MỤC LỤC ........................................................................................................ 2
DANH MỤC HÌNH ẢNH ................................................................................ 6
CHƯƠNG 1: TỔNG QUAN VỀ PHP VÀ MYSQL ....................................... 8
1.1 TỔNG QUAN VỀ PHP ..................................................................................................8
1.1.1 Giới thiệu về ngôn ngữ kịch bản php ............................................................................ 8
1.1.2 Cú pháp…………………………………………………………………………………11
1.1.3 Các kiểu dữ liệu.......................................................................................................... 11
1.1.4 Biến……………………………………………………………………………………..15
1.1.5 Các phép toán ............................................................................................................. 16

1.2 TỔNG QUAN VỀ MYSQL ......................................................................................... 18
1.2.1 Giới thiệu về MySQL ................................................................................................. 18
1.2.2 Đặc điểm .................................................................................................................... 18
1.2.3 Tạo cơ sở dữ liệu và người dùng ................................................................................. 19
1.2.4 Các kiểu dữ liệu trong Mysql ...................................................................................... 20
1.2.5 Các câu lệnh SQL ....................................................................................................... 21
1.2.6 Các hàm trong MySQL ............................................................................................... 23

CHƯƠNG 2: GIỚI THIỆU ĐỀ TÀI ............................................................. 25
2.1. Khảo sát....................................................................................................................... 25
2.1.1. Mục đích của đề tài.................................................................................................... 25
2.1.2. Khảo sát hiện trạng .................................................................................................... 25
2.1.3. Nội dung khảo sát và đánh giá hiện trạng ................................................................... 26

2.2. Nắm bắt yêu cầu.......................................................................................................... 26
2.2.1. Mơ tải bài tốn .......................................................................................................... 26
2.2.2. Đánh giá hiện trạng ................................................................................................... 27


CHƯƠNG 3:PHÂN TÍCH THIẾT KẾ HỆ THỐNG ................................... 29
3.1 Phân tích chức năng..................................................................................................... 29
3.1.1 Dữ liệu đầu vào và ra của hệ thống ............................................................................. 29
3.1.2 Biểu Đồ Phân Cấp Chức Năng.................................................................................... 29
2


3.2 Phân tích chi tiết các chức năng .................................................................................. 31
3.2.1 Quản trị hệ thống........................................................................................................ 31
3.2.2 Cập nhật dữ liệu hệ thống ........................................................................................... 31
3.2.3 Phục vụ khách hàng .................................................................................................... 32

3.3 Biểu đồ luồng dữ liệu ................................................................................................... 34
3.3.1 Các kí hiệu ................................................................................................................. 34
3.3.2 Biểu đồ luồng dữ liệu mức ngữ cảnh .......................................................................... 35
3.3.3 Biểu đồ luồng dữ liệu mức đỉnh .................................................................................. 37
3.3.4 Biểu đồ luồng dữ liệu mức dưới đỉnh ......................................................................... 38

3.4.Đặc tả usecase: ............................................................................................................. 41
3.4.1. Usecase tổng quát: ..................................................................................................... 42
3.4.2. Đăng nhập /đăng xuất: ............................................................................................... 42
3.4.3.Thanh tốn ................................................................................................................. 44
3.4.3. Quản lí nhập xuất ...................................................................................................... 45
3.4.4.Quản lý thu chi ........................................................................................................... 48
3.4.5.Quản lý khách hàng .................................................................................................... 50
3.4.6.Thống kê .................................................................................................................... 52
3.4.7. Quản lý danh mục sản phẩm ...................................................................................... 53
3.4.8. Quản lý sản phẩm ...................................................................................................... 54
3.4.9. Quản lý đơn đặt hàng ................................................................................................. 57


3.5.Mơ hình quy trình ........................................................................................................ 59
3.5.1.Quy trình đăng nhập ................................................................................................... 59
3.5.2.Quy trình nhập hàng ................................................................................................... 59
3.5.3. Quy trình xuất hàng .................................................................................................. 60

3.6. Biểu đồ trình tự ........................................................................................................... 60
3.6.1. Biểu đồ trình tự đăng nhập ......................................................................................... 60
3.6.2. Biểu đồ trình tự quản lý chung ................................................................................... 61
3.6.3. Biểu đồ quản lý khách hàng ....................................................................................... 61
3.6.4. Biểu đồ “Quản lý thu chi” .......................................................................................... 62
3.6.5. Biểu đồ “Quản lý nhập xuất hàng” ............................................................................. 62
3.6.6. Biểu đồ “Thanh toán” ................................................................................................ 63
3


3.6.7.Biểu đồ thống kê ........................................................................................................ 64

3.7 Biểu đồ lớp ( class diagram) ........................................................................................ 64
3.8 Biểu đồ cơ sở dữ liệu (Database Diagram) .................................................................. 65
3.8.1 Chi tiết các bảng ......................................................................................................... 66
3.8.2 Bảng Danh mục sách (Tên bảng: DanhMucSach) ....................................................... 68
3.8.3 Bảng Tác giả (Tên bảng: TacGia) ............................................................................... 68
3.8.4 Bảng nhà xuất bản (Tên bảng: NhaXuatBan) .............................................................. 68
3.8.5 Bảng thẻ hàng (Tên bảng: TheHang) ........................................................................... 68
3.8.6 Bảng chi tiết thẻ hàng (Tên bảng: ChiTietTheHang) ................................................... 69
3.8.7 Bảng khách hàng (Tên bảng: KhachHang) .................................................................. 69
3.8.8 Bảng tin tức sách (Tên bảng: TinTuc) ......................................................................... 70
3.8.9 Bảng nhóm tin (Tên bảng: NhomTin) ......................................................................... 70
3.8.10 Bảng quản lý (Tên bảng: QuanLy) ............................................................................ 70

3.8.11 Bảng quảng cáo (Tên bảng: QuangCao) .................................................................... 72
3.8.12 Bảng vị trí quảng cáo (Tên bảng: ViTriQuangCao) ................................................... 72
3.8.13 Bảng thiết lập mặc định (Tên bảng: Constant) ........................................................... 72

3.9 Thiết kế dữ liệu trong PhpMyAdmin .......................................................................... 73
3.9.1 User……………………………………………………………………………………..73
3.9.2 Transactions ............................................................................................................... 74
3.9.3 Product………………………………………………………………………………….75
3.9.4 Order……………………………………………………………………………………75
3.9.5 Menu……………………………………………………………………………………76
3.9.6 Invoice_entered .......................................................................................................... 76
3.9.7 Event……………………………………………………………………………………77
3.9.8 Comment.................................................................................................................... 77
3.9.9 Categories .................................................................................................................. 78
3.9.10 Attributes ................................................................................................................. 78

CHƯƠNG 4: MÔI TRƯỜNG CÀI ĐẶT VÀ THIẾT KẾ GIAO DIỆN ..... 79
4.1 Lựa chọn công nghệ để thiết kế ứng dụng .................................................................. 79
4.2 Một số giao diện chính ................................................................................................. 79
4.2.1 Giao diện cho khách ................................................................................................... 79
4


4.2.2 Giao diện cho admin ................................................................................................... 92

KẾT LUẬN .................................................................................................. 102
TÀI LIỆU THAM KHẢO ........................................................................... 103

5



DANH MỤC HÌNH ẢNH

Hình 1.1: Q trình thơng dịch trong php ................................................................... 10
Hình 3.0. 1:Biểu đồ phân cấp chức năng..................................................................... 30
Hình 3.0. 2:Biểu đồ mức ngữ cảnh ............................................................................. 36
Hình 3.0. 3: Biểu đồ luồng dữ liệu mức đỉnh .............................................................. 37
Hình 3.0. 4:Biểu đồ luồng dữ liệu chức năng quản trị hệ thống................................... 38
Hình 3.0. 5: Biểu đồ luồng dữ liệu chức năng quản trị dữ liệu .................................... 39
Hình 3.0. 6: Chức năng tra cứu sách .......................................................................... 40
Hình 3.0. 7: Chức năng đăng ký khách hàng ............................................................... 40
Hình 3.0. 8: Chức năng đặt mua và giao sách ............................................................. 41
Hình 3.1 1:Đăng nhập/Đăng xuất................................................................................ 42
Hình 3.1 2:Thanh tốn bán lẻ...................................................................................... 44
Hình 3.1 3:Quản lí nhập xuất ...................................................................................... 46
Hình 3.1 4:Quản lý thu chi ......................................................................................... 48
Hình 3.1 5:Quản lý khách hàng .................................................................................. 51
Hình 3.1 6:Thống kê ................................................................................................... 52
Hình 3.1 7:Quản lý danh mục sản phẩm ..................................................................... 53
Hình 3.1 8:Quản lý sản phẩm ..................................................................................... 55
Hình 3.1 9:Quản lý đơn đặt hàng ................................................................................ 58
Hình 3.2 1:Quy trinh đăng nhập.................................................................................. 59
Hình 3.2 2:Quy trình nhập hàng.................................................................................. 60
Hình 3.2 3:Quy trình xuất hàng .................................................................................. 60
Hình 3.3 1:Biểu đồ trình tự đăng nhập ........................................................................ 61
Hình 3.3 2:Biểu đồ trình tự quản lý chung .................................................................. 61
Hình 3.3 3:Biểu đồ trình tự quản lý khách hàng .......................................................... 62
Hình 3.3 4:Biểu đồ trình tự quản lý thu chi ................................................................. 62
Hình 3.3 5:Biểu đồ trình tự quản lý nhập .................................................................... 63
Hình 3.3 6:Biểu đồ quản lý xuất hang ......................................................................... 63

Hình 3.3 7:Biểu đồ trình tự quản lý thanh tốn .......................................................... 64
Hình 3.3 8:Biểu đồ thống kê ....................................................................................... 64
Hình 3.2 :Biểu đồ lớp ................................................................................................. 65
Hình 3.8 :Biểu đồ cơ sở dữ liệu .................................................................................. 66
Hình 4.2.1.1a Trang chủ ........................................................................................... 80
Hình 4.2.1.1b Đăng ký .............................................................................................. 81
Hình 4.2.1.1c Đăng Nhập ......................................................................................... 82
Hình 4.2.1.2. Trang chủ .............................................................................................. 83
Hình 4.2.1.2. Trang chủ .............................................................................................. 84
Hình 4.2.1.2. Trang chi tiết sản phẩm ......................................................................... 85
Hình 4.2.1.4. Trang bình luận và đánh giá sản phẩm................................................... 86
Hình 4.2.1.4. Trang giỏ hàng ...................................................................................... 87
Hình 4.2.1.5. Trang thanh toán ................................................................................... 88
6


Hình 4.2.1.6a. Trang cập nhập thơng tin cá nhân ........................................................ 89
Hình 4.2.1.6b. Trang quản lý đơn hàng....................................................................... 89
Hình 4.2.1.6. Trang quản lý sản phẩm đánh giá .......................................................... 91
Hình 4.2.1.6. Trang quản lý bình luận sản phẩm ......................................................... 91
Hình 4.2.2.1. Trang đăng nhập admin ......................................................................... 92
Hình 4.2.2.2a. Trang chủ admin.................................................................................. 93
Hình 4.2.2.2b. Trang thống kê admin ......................................................................... 94
Hình 4.2.2.3a. Trang quản lý thơng tin sản phẩm ........................................................ 94
Hình 4.2.2.3b. Trang quản lý danh mục sản phẩm ...................................................... 95
Hình 4.2.2.3c. Trang sản phẩm ................................................................................... 95
Hình 4.2.2.3d. Trang quản lý sản phẩm đánh giá ........................................................ 96
Hình 4.2.2.3e. Trang quản lý bình luận sản phẩm ....................................................... 96
Hình 4.2.2.4a. Trang quản lý bài viết .......................................................................... 97
Hình 4.2.2.4b. Trang quản lý menu ............................................................................ 97

Hình 4.2.2.5a. Trang quản lý khách hàng.................................................................... 98
Hình 4.2.2.5b. Trang quản lý nhà cung cấp ................................................................. 98
Hình 4.2.2.6. Trang quản lý đơn hàng......................................................................... 99
Hình 4.2.2.7a. Trang quản lý nhập kho ....................................................................... 99
Hình 4.2.2.7b. Trang quản lý xuất kho ...................................................................... 100
Hình 4.2.2.7c. Trang quản lý tồn hàng ...................................................................... 100
Hình 4.2.2.8a. Trang quản lý admin .......................................................................... 101
Hình 4.2.2.8b. Trang quản lý slide, banner ............................................................... 101

7


CHƯƠNG 1: TỔNG QUAN VỀ PHP VÀ MYSQL
1.1 TỔNG QUAN VỀ PHP
1.1.1 Giới thiệu về ngôn ngữ kịch bản php
1.1.1.1 Php là gì?
Php được viết tắt của chữ Personal Home Page là ngơn ngữ script trên
server chạy trên phía máy chủ (Server side) giống như các server script khác như:
asp, jsp, cold fusion,… Nó cho phép dễ dàng xây dựng các trang web động, mà
tương tác được với mọi cơ sở dữ liệu như: Informix, MySQL, PostgreSQL, Oracle,
Sybase, SQL Server,…
Php cịn là phần mềm mở, dùng cho mục đích tổng qt. Thích hợp với Web
và có thể dễ dàng nhúng vào trang HTML. Mã PHP có thể thực thi trên Webserver
để tạo ra mã HTML và xuất ra trình duyệt web theo yêu cầu của người sử dụng.
1.1.1.2 Đặc điểm của file php:
Php có thể chạy trên các mơi trường (platforms) khác nhau như: Windows,
Linux, Unix… Nó cịn có khả năng tương thích với hầu hết các servers đang sử
dụng hiện nay như: Apache, IIS...
Ngoài ra các file PHP trả về kết quả cho trình duyệt là một trang thuần
HTML, và các file PHP có thể chứa văn bản (Text), các thẻ HTML (HTML tags)

và các đoạn mã kịch bản (Script).
Phần lớn các file PHP có phần mở rộng là: .php, .php3, . Phpml và lưu ý
rằng, từ phiên bản 4.0 trở về sau mới hỗ trợ session.
1.1.1.3 Lịch sử phát triển:
Dưới đây là một số mốc phát triển của Php:
Năm 1995, phiên bản đầu tiên ra đời có tên là PHP/FI được viết bởi nhà
phát triển phần mềm Rasmus Lerdorf.
PHP/FI, viết tắt từ "Personal Home Page/Forms Interpreter", bao gồm một
số các chức năng cơ bản của PHP ngày nay.
Năm 1997, phiên bản PHP/FI 2.0 ra đời nhưng chỉ được công bố dưới dạng
các bản beta. Đến tháng 11 năm 1997 mới chính thức được cơng bố.
8


Năm 1998, phiên bản PHP 3.0 được chính thức cơng bố.
Andi Gutmans và Zeev Suraski tiếp tục hoàn tất phần lõi nhằm cải tiến PHP
3.0.
Tháng 05/2000, phiên bản PHP 4.0 với hàng loạt các tính năng mới bổ sung,
đã chính thức được công bố.
29/06/2003, phiên bản PHP 5 Beta 1 đã chính thức được cơng bố.
Tháng 10/2003, phiên bản Beta 2 ra mắt với sự xuất hiện của hai tính năng
rất được chờ đợi: Iterators, Reflection nhưng namespace một tính năng gây tranh
cãi khác đã bị loại khỏi mã nguồn.
Ngày 21/12/2003: phiên bản PHP 5 Beta 3 đã được công bố.
Ngày 13/07/2004, phiên bản PHP 5 bản chính thức đã ra mắt sau một chuỗi
khá dài các bản kiểm tra thử bao gồm Beta 4, RC 1, RC2, RC3.
Ngày 14/07/2005, phiên bản PHP 5.1 Beta 3 được PHP Team công bố đánh
dấu sự chín muồi mới của PHP với sự có mặt của PDO.
Hiện nay, phiên bản tiếp theo của PHP đang được phát triển, PHP 6 bản sử
dụng thử đã có thể được download tại địa chỉ .

1.1.1.4 Quá trình thơng dịch trang php
Php là kịch bản trình chủ được chạy trên nền php Engine, cùng với ứng dụng
Web Server để quản lý chúng.
Khi trang php được gọi, Web Server triệu gọi php Engine để thông dịch,
dịch trang php và trả về kết quả cho người sử dụng là một trang thuần HTML

9


Ta có mơ hình như sau:

Hình 1.1: Q trình thơng dịch trong php
1.1.1.5 Ưu điểm của Php:
Có nhiều lý do khiến cho việc sử dụng ngôn ngữ này chiếm ưu thế xin nêu
ra đây một số lý do cơ bản :
- Mã nguồn mở (open source code)
- Miễn phí, download dễ dàng từ Internet.
- Ngôn ngữ rất dễ học, dễ viết.
- Mã nguồn không phải sửa lại nhiều khi viết chạy cho các hệ điều hành
từ Windows, Linux, Unix
- Rất đơn giản trong việc kết nối với nhiều nguồn DBMS, ví dụ như:
MySQL, Microsoft SQL Server 2000, Oracle, PostgreSQL, Adabas,
dBase, Empress, FilePro, Informix, InterBase, mSQL, Solid, Sybase,
Velocis và nhiều hệ thống CSDL thuộc Hệ Điều Hành Unix (Unix
dbm) cùng bất cứ DBMS nào có sự hổ trợ cơ chế ODBC (Open
Database Connectivity) ví dụ như DB2 của IBM.
10


1.1.2 Cú pháp

Đầu tiên, một đoạn mã php luôn được bắt đầu và kết thúc bởi cặp thẻ theo
cú pháp:
các lệnh của php;
?>
Sau đó, ta cũng có thể nhúng các lệnh của php vào trang HTML và đoạn mã
php có thể đặt bất kỳ đâu trong tài liệu. Thông thường một trang php bao gồm các
thẻ HTML như một trang HTML nhưng có thêm các đoạn mã php.
Ví dụ: Ta có đoạn mã php hiển thị câu “Hom nay em duoc hoc cu phap mot
doan ma php” lên trình duyệt như sau:
<html>
<head> </head>
<body>
echo “Hom nay em duoc hoc cu phap mot doan ma php”;
?>
</body></html>
Lưu ý:
- Các file php phải có phần mở rộng là .php. Nếu phần mở rộng là
.html thì đoạn mã php sẽ khơng được thực thi.
- Có thể viết các câu chú thích cho đoạn mã php. Có hai cách viết là: /*
chú thích */ hoặc // chú thích.
- Đoạn mã php cũng có thể đặt trong cặp thẻ: <? Đoạn mã php ?>
1.1.3 Các kiểu dữ liệu
Php hỗ trợ 5 kiểu dữ liệu như sau:

11


 Integer: sử dụng cho giá trị có kiểu dữ liệu là số nguyên. Trên hầu hết

các hệ thống, kiểu số ngun có kích thước 32 bit, mang giá trị từ 2147483647 cho đến 2147483648.
Ví dụ: $a = 1234;
$b = -123;
$c = 0123; //giá trị 123 ở hệ cơ số 8, tương đương với 83 ở hệ cơ
số 10
$d = 0x1F; //giá trị 1F ở hệ cơ số 16, tương đương với 31 ở hệ
cơ số 10
?>
 Double (còn gọi là Float): Sử dụng cho giá trị có kiểu dữ liệu là số thực.
Trên hầu hết các hệ thống, kiểu số thực có kích thước 64 bit.
Ví dụ: $a = 1.234;
$b = 1.2e3; //= 1.2*10^3 = 1200
$c = 7E-10; //= 7*(10^-10) = 0.0000000007
$d = -1.23;
?>
 String: Sử dụng cho các giá trị có kiểu dữ liệu là chuỗi và ký tự, mỗi ký tự
có kích thước là 1 byte. Nội dung string được đặt giữa 2 dấu nháy, nháy đơn
(') hoặc nháy kép (").
Ví dụ:
$a = 'Đây là 1 chuỗi được đặt giữa dấu nháy đơn';
$b = "Đây là 1 chuỗi được đặt giữa dấu nháy kép";
12


$c = 'Đây là 1 chuỗi được đặt giữa dấu nháy đơn với
"vài dấu nháy kép ở giữa"';
$d = "Đây là 1 chuỗi được đặt giữa dấu nháy kép với

'vài dấu nháy đơn ở giữa'";
?>
Nếu bạn muốn sử dụng dấu nháy đơn ở trong 1 chuỗi được bọc bởi dấu nháy
đơn, hoặc sử dụng dấu nháy kép đặt giữa chuỗi được bọc bởi dấu nháy kép thì bạn
để thêm ký tự \ (gọi là ký tự escape) ở phía trước.
Ví dụ:
$a = 'Dấu \'nháy đơn\' ở giữa chuỗi'; //$a mang giá trị: Dấu
'nháy đơn' ở giữa chuỗi
$b = "Dấu \"nháy kép\" ở giữa chuỗi"; //$b mang giá trị: Dấu
"nháy kép" ở giữa chuỗi
$c = "Dùng ký tự \\ ở giữa câu \\ thì sao?"; //$c mang giá trị:
Dùng ký tự \ ở giữa câu \ thì sao?
?>

Khi sử dụng dấu nháy đơi để bọc chuỗi, ngồi \', \" và \\, PHP có thể nhận
dạng thêm một số chuỗi ký tự escape đặc biệt nữa:
\n: ký tự xuống hàng LF (ký tự có mã 10 trong bảng mã ASCII)
\r: ký tự về đầu dịng CR (ký tự có mã 13 trong bảng mã ASCII)
\t: ký tự tab (ký tự có mã 9 trong bảng mã ASCII)
\$: ký tự $
\ooo: (với o là 1 chữ số từ 0 đến 7) biểu thị 1 ký tự có mã ASCII ooo trong
hệ cơ số 8.
Ví dụ:
\101 sẽ là ký tự 'A' (101 trong hệ cơ số 8 tương đương 65 trong hệ cơ số 10,
ký tự ASCII có mã 65 chính là ký tự 'A').
13


\xhh: (với h là 1 chữ số từ 0 đến 9 hoặc 1 chữ cái từ A tời F) biểu thị 1 ký

tự có mã ASCII hh trong hệ cơ số 16.
Ví dụ:
\0x41 sẽ là ký tự 'A' (41 trong hệ cơ số 16 chính là 65 trong hệ cơ số 10).
Ngoài ra, nếu bạn để 1 biến vào giữa 1 chuỗi được bọc với dấu nháy kép,
giá trị của biến sẽ được thay thế vào trong chuỗi.
Ví dụ:
$a = 1;
$b = 2;
$c = 3;
$d = "$a $b $c";
//$d sẽ mang giá trị là chuỗi "1 2 3"
?>
 Array: Sử dụng cho các giá trị có kiểu dữ liệu là mảng. Mảng cịn có thể
tạo được tạo thành bởi các cặp (khóa, giá trị).
Ví dụ:
$a = Array( "khố 1" => "giá trị 1", "khoá 2" => "giá trị 2", "khoá 3" =>
"giá trị 3");
echo $a["khoá 1"]; //in ra: giá trị 1
$b = Array( "a" => "Đinh", "b" => "Công", "c" => "Trực");
echo $b["a"]; //in ra: Đinh
$b["a"] = "Đinh";
$b["b"] = "Công";
$b["c"] = "Trực"; //giờ đây $b = Array("a" => "Đinh", "b" => "Công",
"c" => "Trực")
14


?>



Object: Sử dụng cho các giá trị có kiểu dữ liệu là đối tượng của lớp

1.1.4 Biến
Quy tắc viết tên biến trong PHP
- Biến trong PHP bắt đầu bằng dấu $, theo sau là tên của biến.
- Tên của biến phải bắt đầu bằng chữ hoặc ký tự gạch dưới.
- Tên biến chỉ có thể là các ký tự chữ-số hoặc dấu gạch dưới(A-z, 0-9, _
)
- Tên biến không được chứa khoảng trắng
- Tên biến phân biệt chữ hoa và chữ thường (z and Z là 2 biến khác nhau)
- Cách khai báo biến: PHP khơng có câu lệnh để thực hiện khai báo biến.
Một biến được khai báo khi bạn gán cho nó một giá trị.
Ví dụ: $myMotor="AirBlade";
Sau khi thực thi khai báo trên, biến $myMotor nhận giá trị là AirBlade.
Chú ý: Nếu muốn khai báo biến mà không gán giá trị nào cho nó thì gán
cho nó giá trị null.
Bây giờ lấy ví dụ khai báo biến có chứa giá trị là chuỗi và biến có giá trị là
số:
$txt="Chào bạn";
$x=30;
?>
Chú ý: Khi bạn gán một giá trị dạng text cho biến thì bạn phải cho giá trị
của biến vào trong ngoặc kép.

15



1.1.5 Các phép toán
1.1.5.1 Toán tử gán
Chúng ta đã từng tiếp xúc với toán tử này bởi việc khởi tạo 1 biến. Nó gồm
ký tự đơn =. Tốn tử gán lấy giá trị của tốn hạng bên phải gán nó vào tốn hạng
bên trái.
Ví dụ: $name = "Xn Cảnh";
1.1.5.2 Tốn tử số học
Là dạng phép tính giản đơn cộng, trừ, nhân, chia trong số học. Ngồi ra cịn
có phép chia lấy dư (%). Được sử dụng để lấy ra đơn vị dư của 1 phép tốn.
Tốn tử

Giải thích

Ví dụ

Kết quả

+

Cộng hai số
hạng

10+2

12

-

Trừ hai số
hạng


10-2

8

*

Nhân hai số
hạng

10*2

20

/

Chia hai số
hạng

10/2

5

%

Trả về số dư

10%2

0


1.1.5.3 Toán tử so sánh
Là toán tử được sử dụng để thực hiện các phép toán so sánh giữa hai số
hạng. Chi tiết, xem bảng bên dưới.

16


Phép
tốn

Giải thích

Tên

Ví dụ

==

Bằng

Hai số hạng bằng nhau

$a==10

!=

Khơng bằng

Hai số hạng không bằng nhau


$a!=10

===

Đồng nhất

Hai số bằng nhau và cùng kiểu

$a===10

>

Lớn hơn

Vế trái lớn hơn vế phải

$a>10

>=

Lớn hơn hoặc
bằng

Vế trái lớn hơn hoặc bằng vế
phải

$a>=10

<


Nhỏ hơn

Vế trái nhỏ hơn vế phải

$a<10

<=

Nhỏ hơn hoặc
bằng

Vế trái nhỏ hơn hoặc bằng vế
phải

$a<=10

1.1.5.4 Toán tử logic
Toán tử logic là các tổ hợp các giá trị boolean.
Ví dụ: tốn tử or trở về true nếu tốn tử trái hoặc toán tử phải là true.
True || false.
Ta có bảng các tốn tử như sau:
Tốn tử

Tên

Ví dụ

&&


And (và)

$a && $b

||

Or (hoặc)

$a or $b

!

Not (phủ định)

!$c

1.1.5.5 Toán tử kết hợp:
Khi tạo mã PHP, chúng ta sẽ thường nhận thấy cần phải tăng hoặc giảm
lượng biến một số nguyên nào đó. Bạn sẽ thường thực hiện điều này khi chúng ta
đếm 1 giá trị nào đó trong vịng lặp
17


Phép tốn

Ví dụ

Giải thích

++


$a++

Bằng với
$a=$a+1

--

$a--

Bằng với $a=$a-1

+=

$a+=$b

Bằng với
$a=$a+$b

-=

$a-=$b

Bằng với $a=$a$b

*=

$a*=$b

Bằng với

$a=$a*$b

/=

$a/=$b

Bằng với
$a=$a/$b

1.2 TỔNG QUAN VỀ MYSQL
1.2.1 Giới thiệu về MySQL
SQL là chuẩn ngôn ngữ ANSI để truy cập CSDL. SQL là viết tắt của
Structured Query Language - Ngôn ngữ truy vấn cấu trúc.
SQL là một chuẩn của ANSI (American National Standards Institute - Viện
tiêu chuẩn quốc gia Hoa kỳ) về truy xuất các hệ thống CSDL. Các câu lệnh SQL
được sử dụng để truy xuất và cập nhật dữ liệu trong một CSDL.
1.2.2 Đặc điểm
SQL hoạt động với hầu hết các chương trình CSDL như MS
Access, DB2, Informix, MS SQL Server, Oracle, Sybase v.v... Nó có nhiều
phiên bản cho các hệ điều hành khác nhau: phiên bản Win32 cho các hệ điều hành
dòng Windows, Linux, Mac OS X, Unix, Solaris…
Lưu ý: Hầu hết các chương trình CSDL hỗ trợ SQL đều có phần mở rộng
cho SQL chỉ hoạt động với chính chương trình đó.

18


Một CSDL thường bao gồm một hoặc nhiều bảng (table). Mỗi bảng được
xác định thơng qua một tên (ví dụ Customers hoặc Orders). Bảng chứa các mẩu
tin - dòng (record - row), là dữ liệu của bảng.

MySQL là cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, có tính khả
chuyển, hoạt động trên nhiều hệ điều hành cung cấp một hệ thống lớn các hàm
tiện ích rất mạnh.
Với tốc độ và tính bảo mật cao, MySQL rất thích hợp cho các ứng dụng có
truy cập CSDL trên internet. MySQL server hoạt động trong các hệ thống nhúng
hoặc client/server.
1.2.3 Tạo cơ sở dữ liệu và người dùng
1.2.3.1 Kết nối và tạo cơ sở dữ liệu
Để kết nối cơ sở dữ liệu ta có thể thực hiện theo hai cách:
+ Kết nối và tạo CSDL bằng Command line.
+ Kết nối và tạo CSDL bằng giao diện đồ họa: MySQL Administrator hoặc
phpmyadmin.
1.2.3.2 Quản lý người dùng
Để đăng nhập vào MySQL ta có thể sử dụng user là root và pass là rỗng.
Ngồi tài khoản này ta có thể tạo thêm các tài khoản cho người dùng với
các users và pass khác nhau.
1.2.3.2.1 Cấp quyền cho người dùng
Với quyền root ta có thể thực hiện mọi thao tác trên CSDL: select, update,
insert, delete,…
Tuy nhiên, khi tạo quyền người dùng ta cũng có thể hạn chế bớt một số
quyền nhất định nào đó.
1.2.1.1.1. Xóa quyền hoặc xóa tài khoản người dùng:
Sau khi cấp quyền cho người dùng ta có thể thêm hoặc loại bỏ một số quyền
nào đó.
Với việc truy cập vào tài khoản root ta có thể xóa các tài khoản người dùng
đã được tạo ra.
19


1.2.4 Các kiểu dữ liệu trong Mysql

 Dữ liệu kiểu numeric
Bao gồm các kiểu sau:
- Tinnyint: Lưu các số nguyên khơng dấu (unsigned) từ 0-255 hoặc các
số ngun có dấu từ -128 -> 127
- Mediumint: Lưu các số nguyên từ 0 đến 16.777.215 hoặc từ -8.388.608
đến 8.388.607
- Int: Lưu các số nguyên từ 0 đến 4.294.967.295 hoặc từ -2.147.483.848
đến 2.147.483.847
- Bigint
- Float
- Doube
- Decimal/real
 Dữ liệu kiểu date và time:
Bao gồm các kiểu sau:
- Date: Lưu trữ ngày dạng yyy-mm-dd. Cho phép giá trị từ 1000-01-01
đến 9999-12-31
- Datetime: Lưu trữ dạng yyyy-mm-dd hh:mm:ss
- Timestamp: Tự động ghi nhận thời gian thay đổi gần nhất. Tùy thuộc
vào độ rộng của cột nằm trong khoảng từ 2 đến 14 (yy đến yyyy-mmdd hh:mm:ss)
- Time: Dùng để lưu trữ giờ định dạng hh:mm:ss.
- Year: Dùng để lưu năm bắt đầu từ 1970
 Dữ liệu kiểu string: bao gồm các kiểu sau:
- Char: Chiều dài tối đa 255 ký tự, đây là kiểu có chiều dài cố định.

20


- Varchar: Cũng tương tự kiểu char có chiều dài tối đa 255 ký tự, song
có điểm khác là có chiều dài thay đổi, các giá trị sẽ không bị nối thêm
ký tự trắng.

- Tinytext: là kiểu ký tự văn bản nhị phân. Có chiều dài tối đa 255.
- Text: có chiều dài 65.535 ký tự. Các chỉ mục có thể được tạo trên 255
ký tự đầu của cột text
- Mediumtext: có chiều dài 16.777.215
- Longtext: có chiều dài >4 tỉ ký tự
- Enum, Set,…
1.2.5 Các câu lệnh SQL
1.2.5.1 Câu lệnh SELECT
Dùng để truy vấn dữ liệu từ một hay nhiều bảng khác nhau và trả về kết quả
là một tập mẫu tin thỏa mãn điều kiện nào đó
Cú pháp: SELECT <Danh sách các cột>
[FROM <danh sách các bảng>]
[WHERE <các điều kiện ràng buộc>]
[GROUP BY <tên cột/ biểu thức trong SELECT>]
[HAVING <đk bắt buộc của GROUP BY>]
[ORDER BY <danh sách cột>]
[LIMIT FromNumber | ToNumber]
Trong đó, danh sách các cột: Tên các cột, biểu thức kết hợp giữa các cột của
bảng.
Trường hợp truy vấn tất cả các cột của bảng ta sử dụng tốn tử * thay vì chỉ
ra danh sách tất cả các cột.
Trường hợp, có các cột cùng tên ở các bảng khác nhau thì ta cần chỉ ra tên
bảng đi trước theo cú pháp: Tên_bảng.Tên_cột
21


1.2.5.2 Câu lệnh Insert
Được sử dụng khi cần thêm mẫu tin vào bảng trong CSDL MySQL.
Khi thêm dữ liệu, cần chú ý đến kiểu dữ liệu của các cột mình cần thêm dữ
liệu.

Cần quan tâm đến quyền của User đăng nhập có được phép Insert hay
khơng.
Khi Insert dữ liệu vào bảng có 3 trường hợp:
- Insert từ giá trị cụ thể
- Lấy giá trị từ một hoặc nhiều bảng khác
- Bao gồm cả hai trường hợp
1.2.5.3 Câu lệnh Update
Dùng để cập nhật lại dữ liệu đã tồn tại trong bảng.
Nếu cập nhật giá trị cụ thể:
UPDATE <tên bảng> SET <cột> = <giá trị>, [<cột> = <giá trị>]
[WHERE <conditions>]
Cập nhật giá trị từ bảng khác:
UPDATE <tên bảng> SET <tên cột>=<SELECT … FROM tên bảng …>

UPDATE có thể ảnh hưởng đến nhiều bảng nhưng cập nhật giá trị chỉ có
hiệu lực trên bảng đó.
1.2.5.4 Câu lệnh Delete
Dùng để xóa mẫu tin trong bảng được chỉ ra bởi tên bảng và mệnh đề
WHERE (nếu có) nhằm xác định mẫu tin cần xóa theo một điều kiện nào đó.
DELETE FROM <tên bảng> WHERE <conditions>.
Conditions: có thể là phép tốn giữa các cột và giá trị hoặc giá trị là kết quả
trả về của một câu lệnh SELECT khác.

22


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

Tải bản đầy đủ ngay
×