Tải bản đầy đủ (.docx) (138 trang)

Trang web bán hàng và phần mềm hỗ trợ mua hàng trên window phone 7

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 (3.73 MB, 138 trang )

1

LỜI MỞ ĐẦU
Sử dụng trang web để tra cứu thông tin và mua bán đã trở nên quen thuộc với mọi
người trong xã hội hiện nay. Từ máy tính để bàn, laptop và hiện nay đang dần trở nên phổ
biến là máy tính bảng, điện thoại thông minh với đầy đủ các chức năng.
Nắm bắt xu hướng mua hàng online của mọi người, chúng tôi đã phát triển 1
website bán hàng với nhiều mặt hàng đa dạng, phong phú và đặc biệt hỗ trợ việc truy cập
từ các thiết bị máy tính, điện thoại…
Một ứng dụng trên điện thoại thông minh sẽ hỗ trợ rất nhiều cho người sử dụng vì
nó sẽ tiện lợi, thao tác nhanh chóng hơn so với việc sử dụng web thông thường. Do đó
nhóm chúng tôi đã phát triển riêng 1 ứng dụng chạy trên Windows Phone 7 hỗ trợ mua
hàng tốt hơn, đồng thời giúp tìm hiểu, phát triển thêm cho hệ điều hành còn rất mới này.


2

LỜI CẢM ƠN
Để hoàn thành chương trình đại học và làm khóa luận này, chúng tôi xin chân
thành cảm ơn Khoa Mạng Máy Tính và Truyền Thông, trường Đại học Công Nghệ Thông
Tin, Đại Học Quốc Gia Thành Phố Hồ Chí Minh đã tạo điều kiện cho chúng tôi thực hiện
đề tài tốt nghiệp này.
Chúng tôi xin gửi lời biết ơn sâu sắc đến thầy TS. Đàm Quang Hồng Hải và thấy
ThS. Ngô Hán Chiêu, người đã dành nhiều thời gian và tâm huyết hướng dẫn nghiên cứu
và giúp chúng tôi hoàn thành khóa luận tốt nghiệp.
Sau cùng, chúng tôi xin gửi lời biết ơn tới gia đình, nơi đã sinh thành, dưỡng dục
và động viên rất nhiều trong thời gian qua.
Tp, Hồ Chí Minh, tháng 2 năm 2012
Võ Minh Tuấn
Trần Tuyết Hạnh



3
NHẬN XÉT
(Của giảng viên hướng dẫn)
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................


4

NHẬN XÉT
(Của giảng viên phản biện)
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................
..................................................................................................................................



5

MỤC LỤC

LỜI MỞ ĐẦU.................................................................................................................... i
LỜI CẢM ƠN..................................................................................................................ii
Chương 1: Đặt vấn đề......................................................................................................1
1.1. Bài toán đặt ra.....................................................................................................1
1.2. Giải quyết............................................................................................................1
Chương 2: Cơ Sở Lý Thuyết...........................................................................................3
2.1. PHP...................................................................................................................... 3
2.1.1.

Giới thiệu....................................................................................................3

2.1.2.

Lệnh trong PHP..........................................................................................3

2.1.3.

Biến trong PHP...........................................................................................5

2.1.4.

Toán tử trong PHP......................................................................................7

2.1.5.


Hàm trong PHP...........................................................................................9

2.1.6.

Xử lý form trong PHP...............................................................................11

2.1.7.

Session......................................................................................................13

2.2. MySQL..............................................................................................................15
2.2.1.

Định nghĩa cơ sở dữ liệu, bảng, cột..........................................................15

2.2.2.

Một số thuật ngữ trong MySQL................................................................16

2.2.3.

Loại dữ liệu trong MySQL.......................................................................16

2.2.4.

Cú pháp.....................................................................................................17

2.2.5.


Kết hợp PHP và MySQL trong ứng dụng website....................................20


6
2.3. Silverlight for Windows Phone 7.....................................................................21
2.3.1.

Tổng quan về Windows Phone 7...............................................................21

2.3.2.

Microsoft Visual Studio...........................................................................21

2.3.3.

Cấu trúc project trong Windows Phone Application Project Template sử

dụng Visual Studio 2010.........................................................................................23
2.3.4.

Nền tảng ứng dụng cho Windows Phone..................................................24

Chương 3: Xây dựng ứng dụng.....................................................................................29
3.1. Cơ sở dữ liệu......................................................................................................29
3.1.1.

Giới thiệu..................................................................................................29

3.1.2.


Chi tiết bảng dữ liệu..................................................................................30

3.1.3.

Sơ đồ dữ liệu quan hệ...............................................................................35

3.2. Website bán hàng..............................................................................................35
3.2.1.

Giới thiệu..................................................................................................35

3.2.2.

Thanh toán qua nganluong.vn...................................................................36

3.2.3.

Kết nối database........................................................................................39

3.2.4.

Thiết kế giao diện.....................................................................................39

3.2.5.

Xử lý tác vụ đối với người dùng phổ thông..............................................50

3.2.6.

Thiết lập chức năng của admin.................................................................56


3.2.7.

RSS...........................................................................................................63

3.3. Website trên di động.........................................................................................66
3.3.1.

Trang chủ (index.php)...............................................................................67

3.3.2.

Tìm kiếm (search.php)..............................................................................69

3.3.3.

Đăng nhập, mua hàng...............................................................................72


7
3.4. Tiện ích khác.....................................................................................................73
3.5. Ứng dụng mua hàng trên windows phone 7...................................................75
3.5.1.

Giao diện chính.........................................................................................75

3.5.2.

Chức năng Tin tức.....................................................................................77


3.5.3.

Chức năng Tra cứu....................................................................................83

3.5.4.

Chức năng Thông tin................................................................................93

3.5.5.

Chức năng Mua sắm.................................................................................97

Chương 4: Sử dụng......................................................................................................102
4.1. Sử dụng website với desktop version.............................................................102
4.1.1.

Tìm kiếm theo tên sản phẩm:..................................................................102

4.1.2.

Đăng kí thành viên..................................................................................103

4.1.3.

Mua hàng................................................................................................105

4.1.4.

Liên hệ....................................................................................................105


4.2. Sử dụng website với mobile version...............................................................106
4.3. Admin..............................................................................................................109
4.3.1.

Đăng nhập quyền quản trị.......................................................................109

4.3.2.

Thêm sản phẩm mới................................................................................111

4.3.3.

Quản lí khuyến mãi.................................................................................112

4.3.4.

Quản lí thành viên...................................................................................112

4.3.5.

Quản lí tin...............................................................................................113

4.3.6.

Quản lí hóa đơn.......................................................................................114

4.3.7.

Chiết khấu...............................................................................................114


4.4. Sử dụng ứng dụng LV trên windows phone 7...............................................115


8
4.4.1.

Tin tức.....................................................................................................115

4.4.2.

Tra cứu....................................................................................................117

4.4.3.

Thông tin................................................................................................120

4.4.4.

Mua sắm.................................................................................................121

Chương 5: Kết luận......................................................................................................122
Chương 6: Tài liệu tham khảo....................................................................................125


1
Chương 1: Đặt vấn đề
1.1.

Bài toán đặt ra
Như ta đã biết việc mua sắm thông qua internet ngày càng trở nên phổ biến. Đơn


giản và phổ biến nhất là sử dụng trình duyệt web, từ đó đăng kí, khai báo thông tin cá
nhân và đặt mua hàng trên web.
Tuy nhiên do sự phổ biến của điện thoại thông minh có thể duyệt web tương tự
như sử dụng máy tính nên trang web đòi hỏi phải đa dạng hơn và thuận tiện cho người sử
dụng.
Cao hơn nữa ở mức độ thành viên thân thiết, họ có 1 mối liên kết mua hàng hay có
nhu cầu thường xuyên mua hàng thì việc lên web từ máy tính hay điện thoại có thể làm
mất 1 khoảng thời gian hay rối rắm do phải làm đầy đủ các bước để mua hàng. Do các
thành viên đặc biệt như vậy nên đối với người bán có thể bỏ qua 1 số bước khi mua hàng
và cho họ mua hàng trực tiếp, nhanh chóng, tiện lợi.
Do sự phân cấp người sử dụng như vậy nên trang web cần đáp ứng sao cho người
xem, người mua hay thành viên thân thiết có được sự tiện lợi nhất trong việc sử dụng.

1.2.

Giải quyết
Nắm được nhu cầu sử dụng và phân loại các thành viên khách hàng của mình,

chúng tôi quyết định chia trang web của mình ra làm 3 phần với các phiên bản: desktop
version, mobile version và mobile application.
-

Desktop version:
P Quen thuộc với đa phần người dùng.
P Hỗ trợ trên destop, laptop, điện thoại với cấu hình chạy desktop version.
P Hỗ trợ các trình duyệt khác nhau.
P Hỗ trợ đầy đủ nhất các chức năng của trang web cũng như mua hàng.
P Xem tin tức, tra cứu, tìm kiếm sản phẩm.
P Đăng kí thành viên, đăng nhập, mua hàng, xác nhận hóa đơn.



2
P Liên hệ với các chi nhánh thông qua bản đồ định vị sử dụng google-map
-

cho biết vị trí hiện tại của người đó
Mobile version:
P Hỗ trợ người dùng truy cập từ điện thoại
P Trang web sẽ phân biệt người dùng đang sử dụng điện thoại với hệ điều
hành nào từ đó sẽ chuyển sang phiên bản cho điện thoại hay không. Trang
web có thể phát hiện và chuyển trang đối với điện thoại chạy các hệ điều

-

hành như Android, iOS,Windows Mobile, Windows Phone 7, BlackBerry...
P Đáp ứng nhu cầu xem tin tức.
P Tra cứu, tìm kiếm thông tin sản phẩm.
P Đăng nhập, mua hàng, xác nhận hóa đơn.
P Định vị GPS xác định vị trí và thể hiện trên google-map.
Mobile application:
P Phần mềm cho các các thành viên thân thiết có nhu cầu giao dịch nhanh và
P
P
P
P

giao dịch thường xuyên
Chạy trên thiết bị điện thoại thông minh.
Hỗ trợ xem tin tức với giao diện rõ ràng.

Hỗ trợ đăng nhập và mua hàng nhanh chóng, không thông qua giỏ hàng.
Để đa dạng hóa tính năng, chương trình còn hỗ trợ xem báo từ các trang
báo mạng nổi tiếng như vnexpress, tuổi trẻ.. và ứng dụng tra cứu thông tin

tỉ giá, từ điển anh-việt… được tích hợp vào ứng dụng
P Mục tiêu: như câu “Nước chảy đá mòn”, “Mưa dầm thấm lâu”. Người dùng
sử dụng ứng của công ty phát triển và dùng thường xuyên để đọc tin, tra
cứu hằng ngày thì công ty có thể sẽ là nơi đầu tiên họ nghĩ đến khi cần mua
sắm cho nhu cầu của mình. Có thể coi đây cũng là 1 hình thức quảng cáo
cho công ty.


3
Chương 2: Cơ Sở Lý Thuyết
2.1.

PHP

2.1.1. Giới thiệu
PHP (Hypertext Preprocessor) là ngôn ngữ script trên server được thiết kế để dễ
dàng xây dựng các trang Web động. 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.
Ngôn ngữ PHP ra đời năm 1994 Rasmus Lerdorf sau đó được phát triển bởi nhiều
người trải qua nhiều phiên bản. Phiên bản hiện tại là PHP 5 đã được công bố 7/2004.
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.

2.1.2. Lệnh trong PHP
a. Mã lệnh PHP


4
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ã lệnh PHP %>
Cách 4: Cú pháp bắt đầu bằng script
<script language=php>
.....
</script>
Mặc dù có 4 cách thể hiện. Nhưng đối với 1 lập trình viên có kinh nghiệm thì việc
sử dụng cách 1 vẫn là lựa chon tối ưu.
Trong PHP để kết thúc 1 dòng lệnh chúng ta sử dụng dấu ";"
Để chú thích 1 đoạn dữ liệu nào đó trong PHP ta sử dụng dấu "//" cho từng dòng.
Hoặc dùng cặp thẻ "/*……..*/" cho từng cụm mã lệnh.
mysql_connect('localhost','root','123456'); //kết nối MySQL
mysql_select_db("banhang");

//kết nối database

mysql_query("SET NAMES 'utf8'"); //quy định kiểu tiếng việt
?>

b. Xuất giá trị ra trình duyệt
Để xuất dữ liệu ra trình duyệt chúng ta có những dòng cú pháp sau :


5
-


Echo "Thông tin";
Printf "Thông tin";

Thông tin bao gồm : biến, chuỗi, hoặc lệnh HTML ….
Nễu giữa hai chuỗi muốn liên kết với nhau ta sử dụng dấu "."
Echo “Chào bạn”;

// xuất ra trình duyệt chuỗi bình thường

Echo “<b>Hello</b>”; // xuất ra trình duyệt chữ in đậm – lệnh HTML
Echo “Chào”. “Nguyễn Văn A”; //nối 2 chuỗi lại với nhau
?>

2.1.3. Biến trong PHP
Biến được xem là vùng nhớ dữ liệu tạm thời. Và giá trị có thể thay đổi được. Biến
được bắt đầu bằng ký hiệu "$". Và theo sau chúng là 1 từ, 1 cụm từ nhưng phải viết liền
hoặc có gạch dưới.
1 biến được xem là hợp lệ khi nó thỏa các yếu tố :
- Tên của biến phải bắt đầu bằng dấu gạch dưới và theo sau là các ký tự, số
-

hay dấu gạch dưới.
Tên của biến không được phép trùng với các từ khóa của PHP.
Trong PHP để sử dụng 1 biến chúng ta thường phải khai báo trước, tuy
nhiên đối với các lập trình viên khi sử dụng họ thường xử lý cùng một lúc

các công việc, nghĩa là vừa khái báo vừa gán dữ liệu cho biến.
Bản thân biến cũng có thể gãn cho các kiểu dữ liệu khác. Và tùy theo ý định của
người lập trình mong muốn trên chúng.

Một số ví dụ về biến :
$a=100; //kiểu số
$b = “Hello”; //kiểu chuỗi
?>

a. Hằng trong PHP


6
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

Ví dụ :
Define (“A”, “Nguyen van A”);
?>

b. Chuỗi trong PHP
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ụ: ‘abc’; "Hello world"

Để 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 "."

c. 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.


7
Trong PHP chúng ta có 6 kiểu dữ liệu chính như sau :
Kiểu dữ liệu
Integer
Double
String
Boolean

Ví dụ
10
2.3
Hello
Đúng Sai

Mô tả
Kiểu số nguyên
Kiểu số thực
Kiểu chuỗi

Giá trị trả về là
true hoặc false
Hướng đối tượng PHP
Kiểu mảng chữa các phần tử

Object
Array

2.1.4. Toán tử trong PHP
a. 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 =. Toán tử gán lấy giá trị của toán hạng bên phải gán nó vào toán hạng bên trái.
Ví dụ: $username = u1;

b. Toá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. Ngoà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 toán.
Toán tử
+
*
/
%

Lý giải
Cộng 2 số
Trừ 2 số
Nhân 2 số
Chia 2 số
Chia lấy dư


Ví dụ
1+2
5-1
2*3
4/2
3%2

Kết quả
3
4
6
2
1

c. 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.
Phé

Tên

Giải thích

Ví dụ


8
p toán
==
!=
==


Bằng
Không bằng
Đồng nhất

2 số bằng nhau
2 số không bằng nhau
2 số bằng nhau và cùng kiểu

$a==5
$a!=5
$a===5

>
>=

Lớn hơn
Lớn hơn hoặc

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

$a>5
$a>=5

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

$a<5
$a<=5


=
bằng
<
<=

phải
Bé hơn
Bé hơn hoặc

bằng

phải

d. Toán tử logic
Toán tử logic là các tổ hợp các giá trị boolean.
To

Tên

Trả về true nếu

Ví dụ

án tử

Kết
quả

||


Or

Vế trái hoặc phải là
true

&
&

An

True

True&&F

False

!true

False

False
Vế trái và phải là true

d
!

True||
alse


Not

Không phải true

e. 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.
Phép toán
++
-+=
-=
*=
/=

Ví dụ
$a++
$a-$a+=$b
$a-=$b
$a*=$b
$a/=$b

Giải thích
Bằng với $a=$a+1
Bằng với $a=$a-1
Bằng với $a=$a+$b
Bằng với $a=$a-$b
Bằng với $a=$a*$b
Bằng với $a=$a/$b



9
2.1.5. Hàm trong PHP
a. Câu điều kiện
Là biểu thức dùng kiểm tra 1 sự kiện. Nếu chúng thỏa điều kiện đó thì sẽ thực thi
một hành động. Ngược lại sẽ là một hành động khác.
Cú pháp:
If(Điều kiện)
{
hành động
}

Ví dụ:
If (isset($_GET['mode']))
{
session_destroy();
header ("location: index.php");
}

b. Vòng lặp
Phép lặp này yêu cầu phải thỏa mãn điều kiện thì mới thực thi được vòng lặp
Cú pháp:
While(điều kiện)
{
Hành động – thực thi
}

Ví dụ
while ($row = mysql_fetch_array($qr))



10
{
?>
<tr class="tieudetin"><td colspan="2"><?php echo $row['TIEUDE'];?></td></tr>
<tr><td width="70"></td><td valign="top">

$row['TOMTAT'];?>

</td></tr>
<tr><td colspan="2">


switch ($mode)
{
case 'view_all':


11
{
include ("view_all.php");
break;
}
case 'view_category':
{
include ("view_category.php");
break;
}

case 'view_details':
{
include ("view_details.php");
break;
}
….
default: include ("view_all.php");
}

2.1.6. Xử lý 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.

1 form phải bao gồm:
-

Tên form để dễ dàng tách biệt với giá trị của chúng.
Action: hành động chuyển tiếp đến link xử lý.
Method: Là phương thức truyền bao gồm POST và GET.


12
Ví dụ:
action="login_handle.php">
Username
<input name="username" type="text" class="login_txt" id="username" />
Password
<input name="password" type="password" class="login_txt" id="password" />
<input type="submit" id="submit" value="Đăng nhập" />

<a href="index.php?mode=register">Đăng ký</a>


</form>

Đầu tiên khi khách nhập liệu username vào thì chúng sẽ chuyển tới trang
login_handle.php để tiến hành xử lý thông tin. Trên phương thức POST, với tên form là
formlogin. Giá trị mà chúng ta gởi là username vừa nhập liệu.
PHP cho phép ta lấy giá trị dựa vào 2 phương thức POST và GET.
-

Đới với POST ta có : $_POST[‘Giá trị’]
Đối với GET ta có : $_GET[‘Giá trị’]

Vậy với đoạn code trên có thể lấy được biến xử lý là : $_POST[‘username’];

Username là tên của field mà người sử dụng nhập liệu vào.
a. Phương thức GET:
Phương thức này cũng được dùng để lấy dữ liệu từ form nhập liệu. Tuy nhiên
nhiệm vụ chính của nó vẫn là lấy nội dung trang dữ liệu từ web server.
Ví dụ:
Với url sau: login_handle.php?id=50
Vậy với trang shownews ta dùng hàm $_GET[‘id’] sẽ được giá trị là 50.


13
b. Phương thức POST:
Phương thức này được sử dụng để lấy dữ liệu từ form nhập liệu. Và chuyển chúng
lên trình chủ webserver.
Ví dụ: đối với form formlogin như ở trên, khi người dùng nhập username = u1 và
password = 123. Khi submit lên server và xử lý ở trang login_handle.php thì ta dùng
$username = $_POST['username'];
$password = $_POST['password'];

Khi đó nếu sử dụng lệnh echo 2 biến $username và $password thì sẽ cho 2 giá trị
u1 và 123 trên trình duyệt.

2.1.7. Session
Một cách khác quản lý người sử dụng là session. Session được hiểu là khoảng thời
gian người sử dụng giao tiếp với 1 ứng dụng. Một session được bắt đầu khi người sử
dụng truy cập vào ứng dụng lần đầu tiên, và kết thúc khi người sử dụng thoát khỏi ứng
dụng. Mỗi session sẽ có được cấp một định danh (ID) khác nhau và nội dung được lưu
trong thư mục thiết lập trong file php.ini (tham số session.save_path).
a. Thiết lập session:
Để thiết lập 1 session ta sử dụng cú pháp: session_start()
Đoạn code này phải được nằm trên các kịch bản HTML. Hoặc những lệnh echo,

printf.
Để thiết lập 1 giá trị session, ngoài việc cho phép bắt đầu thực thi session. Chúng
ta còn phải đăng ký 1 giá trị session. Để tiện cho việc gán giá trị cho session đó.
Ta có cú pháp sau: session_register("Name")
Ví dụ:


14
ob_start();
session_start(); ?>

b. Sử dụng giá trị của session:
Để sử dụng giá trị của session ta sử dụng mã lệnh sau:
Cú pháp: $_SESSION["name"]
Với Name là tên mà chúng ta sử dụng hàm session_register("name") để khai báo.
Ví dụ:
if (isset($_POST['username']) && isset($_POST['password']))
{
$username = $_POST['username'];
$password = $_POST['password'];

include ("cnn.php");
$qr = "select * from user where USERNAME = '$username' and PASSWORD =
'$password'";
$data = mysql_query($qr);
$row = mysql_fetch_array($data);

$_SESSION['IDUSER']=$row['IDUSER'];
$_SESSION['username'] = $username;

….
}

Đối với đoạn code trên, sau khi kiểm tra người dùng nhập đúng user và password
sẽ tạo ra session cho người dùng đó lưu trữ IDUSER và username để sử dụng cho các lần
xử lý sau.


15
c. Hủy bỏ session:
Để hủy bỏ giá trị của session ta có những cách sau:
session_destroy() // Cho phép hủy bỏ toàn bộ giá trị của session
session_unset()// Cho phép hủy bỏ session .

2.2.

MySQL
MySQL là hệ quản trị dữ liệu miễn phí, được tích hợp sử dụng chung với apache,

PHP. Chính yếu tố phát triển trong cộng đồng mã nguồn mở nên mysql đã qua rất nhiều
sự hỗ trợ của những lập trình viên yêu thích mã nguồn mở. Mysql cũng có cùng một cách
truy xuất và mã lệnh tương tự với ngôn ngữ SQL. Nhưng Mysql không bao quát toàn bộ
những câu truy vấn cao cấp như SQL. Về bản chất Mysql chỉ đáp ứng việc truy xuất đơn
giản trong quá trình vận hành của website nhưng hầu hết có thể giải quyết các bài toán
trong PHP.
2.2.1. Định nghĩa cơ sở dữ liệu, bảng, cột
Cơ sở dữ liệu: là tên của cơ sở dữ liệu chúng ta muốn sử dụng
Bảng: Là 1 bảng giá trị nằm trong cơ sở dữ liệu.
Cột là 1 giá trị nằm trong bảng. Dùng để lưu trữ các trường dữ liệu.
Thuộc tính

Ví dụ
User
USERID
USERNAME
PASSWORD

1
u1
123

Như vậy ta có thể hiểu như sau:
-

1 cơ sở dữ liệu có thể bao gồm nhiều bảng.
1 bảng có thể bao gồm nhiều cột


16
-

1 cột có thể có hoặc không có những thuộc tính.

2.2.2. Một số thuật ngữ trong MySQL
NULL : Giá trị cho phép rỗng.
AUTO_INCREMENT : Cho phép giá trị tăng dần (tự động).
UNSIGNED : Phải là số nguyên dương
PRIMARY KEY : Cho phép nó là khóa chính trong bảng.

2.2.3. Loại dữ liệu trong MySQL
Ở đây chúng tả chỉ giới thiệu 1 số loại thông dụng: 1 số dữ liệu khác có thể tham

khảo trên trang chủ của mysql.
Kiểu dữ

Mô tả

liệu
Char
Varchar
Text
Longtext
INT
Float
Double
Date
Datetime

Định dạng text có chiều dài từ 0-255
Định dạng text có chiều dài từ 0-255
Định dạng text có chiều dài từ 0-65535
Định dạng text có chiều dài từ 0-4294967215
Định dạng số có chiều dài từ 0-4294967215
Định dạng thập phân có chiều dài nhỏ
Định dạng thập phân có chiều dài lớn
Định dạng thời gian theo kiểu YYYY-MM-DD
Định dạng thời gian theo kiểu YYYY-MM-DD
HH:MM:SS

2.2.4. Cú pháp
a. Tạo 1 cơ sở dữ liệu
CREATE DATABASE tên_cơ_sở_dữ_liệu;

Cú pháp sử dụng cơ sở dữ liệu: Use tên_database;


17
Cú pháp thoát khỏi cơ sở dữ liệu: Exit
Cú pháp tạo 1 bảng trong cơ sở dữ liệu:
CREATE TABLE user (<tên_cột> <mô_tả>,…,<tên_cột_n>…..<mô_tả_n>)
Ví dụ:
mysql> create table user(user_id INT(15) UNSIGNED NOT NULL
AUTO_INCREMENT, username VARCHAR(255) NOT NULL, password CHAR(50) NOT
NULL, email VARCHAR(200) NOT NULL, PRIMARY KEY (user_id));

Hiển thị có bao nhiều bảng: show tables;
Hiển thị có bao nhiêu cột trong bảng: show columns from table;
Thêm 1 cột vào bảng :
ALTER TABLE tên_bảng ADD <tên_cột> <thuộc_tính> AFTER <tên_cột>
Ví dụ:
mysql> alter table user add sex varchar(200) NOT NULL after email;

b. Thêm giá trị vào bảng
Cú pháp:
INSERT INTO Tên_bảng(tên_cột) VALUES(Giá_trị_tương_ứng);
Ví dụ:
mysql>insert into user(username,password,email,sex,home)
values("Lanna","12345","","F","www.abc.com");

c. Truy xuất dữ liệu
Cú pháp:
SELECT tên_cột FROM Tên_bảng;
Ví dụ:



×