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

Xây dựng và cài đặt website thương mại điện tử bán các sản phẩm từ các website lớn của Trung Quốc

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 (4.17 MB, 66 trang )

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

ĐỒ ÁN

TỐT NGHIỆP ĐẠI HỌC
NGÀNH CÔNG NGHỆ THÔNG TIN
ĐỀ TÀI:

Xây dựng và cài đặt website thương mại điện tử bán
các sản phẩm từ các website lớn của Trung Quốc

Giáo viên hướng dẫn: ThS. Lê Đức Trung
Sinh viên thực hiện: Trần Văn Long
Lớp: LT-CNTT-K2
Sản phẩm: Website />
Hà Nội 01/2017

Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2


PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
1. Thông tin về sinh viên
Họ và tên sinh viên: Trần Văn Long
Điện thoại liên lạc: 09767 49 492

Email:

Lớp: LT-CNTT-K2

Hệ đào tạo: Liên thông



Đồ án tốt nghiệp được thực hiện tại:
………………………………………………………………………………………………
………………………………………………………………………………………………
Thời gian làm ĐATN: Từ ngày 24/10/2016 đến 10/01/2017
2. Mục đích nội dung của ĐATN
………………………………………………………………………………………………
………………………………………………………………………………………………
3. Các nhiệm vụ cụ thể của ĐATN
………………………………………………………………………………………………
………………………………………………………………………………………………
4. Lời cam đoan của sinh viên:
Tôi Trần Văn Long cam kết ĐATN là công trình nghiên cứu của bản thân tôi dưới sự
hướng dẫn của Ths. Lê Đức Trung.
Các kết quả nêu trong ĐATN là trung thực, không phải là sao chép toàn văn của bất kỳ
công trình nào khác.
Hà Nội, ngày ….. tháng …. năm …….
Long
Trần Văn Long
5. Xác nhận của giáo viên hướng dẫn về mức độ hoàn thành của ĐATN và cho phép bảo
vệ:
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
Hà Nội, ngày …. tháng …. năm …….

LỜI MỞ ĐẦU
Ngày nay, với sự phát triển mạnh mẽ của công nghệ thông tin và những ứng dụng
của nó trong đời sống. Máy tính điện tử không còn là một thứ phương tiện lạ lẫm đối với


Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2


mọi người mà nó dần trở thành một công cụ làm việc và giải trí thông dụng và hữu ích của
chúng ta, không chỉ ở công sở mà còn ngay cả trong gia đình.
Trong nền kinh tế hiện nay, với xu thế toàn cầu hoá nền kinh tế thế giới, mọi mặt của
đời sống xã hội ngày càng được nâng cao, đặc biệt là nhu cầu trao đổi hàng hoá của con
người ngày càng tăng cả về số lượng và chất lượng. Hiện nay các công ty tin học hàng đầu
thế giới không ngừng đầu tư và cải thiện các giải pháp cũng như các sản phẩm nhằm cho
phép tiến hành thương mại hóa trên Internet. Thông qua các sản phẩm và công nghệ này,
chúng ta dễ dàng nhận ra tầm quan trọng và tính tất yếu của công nghệ thông tin (CNTT)
và thương mại điện tử (TMĐT). Với những thao tác đơn giản trên máy có nối mạng
Internet bạn sẽ có tận tay những gì mình cần mà không phải mất nhiều thời gian. Bạn chỉ
cần vào các trang dịch vụ TMĐT, làm theo hướng dẫn và click vào những gì bạn cần. Các
nhà dịch vụ sẽ mang đến tận nhà cho bạn.
Qua khảo sát thực tế ở Việt Nam, nói đến hàng Trung Quốc là nói đến nguồn hàng
hóa khổng lồ với mức giá cạnh tranh cùng chất lượng mẫu mã đa dạng. Thống kê cho thấy,
trong tổng số hàng nhập ngoại tại thị trường Việt Nam có đến 35% là hàng Trung Quốc. Và
theo cục xuất nhập khẩu thì còn số này ngày càng tăng lên mỗi năm. Xét về mặt quản lý
kinh tế thì tình trạng nhập siêu hàng Trung Quốc tiềm ẩn nhiều nguy cơ rủi ro cho nền kinh
tế trong nước, làm trơ lì và cản trở sức cạnh tranh của hàng hóa trong nước. Nguyên nhân
chính yếu là do hàng hóa của Trung Quốc rất dồi dào, chất lượng, mẫu mã đa dạng, giá cả
rẻ hơn hàng nội địa và hàng từ các nước khác. Dọc theo các khu chợ lớn ở Việt Nam chúng
ta dễ dàng bắt gặp những ki ốt bán hàng Trung Quốc với mẫu mã rất đa dạng. Tuy nhiên
đây là một thực tế mà kinh tế Việt Nam phải chấp nhận khi đã quyết định bước vào sân
chơi quốc tế. Vấn đề cần quan tâm hiện nay là trong khi nhu cầu tiêu thụ và nhập hàng
Trung Quốc về nước ngày càng lớn thì tình trạng hàng giả, hàng nhái, hàng nhập lậu đang
đi vào thị trường trong nước ngày càng nhiều. Điều này không chỉ gây xáo trộn thị trường,
gây tổn thất cho các đơn vị sản xuất chân chính mà còn ảnh hưởng đến sức khỏe và giống

nòi của người Việt. Làm thế nào để giúp người buôn bán và người tiêu dùng ở Việt Nam
mua được những lô hàng Trung Quốc chính hãng, an toàn với giá rẻ nhất? Làm thế nào để
việc nhập hàng từ Trung Quốc về Việt Nam trở nên đơn giản, nhanh chóng và tiết kiệm
nhất?
Kết hợp với sự phát triển thương mại điện tử hiện nay, website thương mại điện tử
bán hàng các sản phẩm từ các website lớn của Trung Quốc này giải quyết được vấn đề
đang gặp phải khi người tiêu dùng hay chính người bán buôn muốn được đặt hàng chính
hãng, an toàn, giá rẻ từ các website thương mại điện tử lớn của Trung Quốc như
taobao.com, 1688.com, Tmall.com.
Để tiếp cận và góp phần đẩy mạnh sự phổ biến của CNTT và TMĐT ở Việt Nam và
sự đam mê về lập trình ứng dụng website. Em đã tìm hiểu đề tài: “Xây dựng và cài đặt
website thương mại điện tử bán các sản phẩm từ các website lớn của Trung Quốc” làm đề
tài Đồ án của mình. Nội dung gồm có 3 chương:
Chương 1: Kiến thức cơ sở: Trình bày các kiến thức cơ bản để có thể thiết kế, vận
hành website.
Chương 2: Khảo sát và Phân tích hệ thống: Từ việc khảo sát hệ thống ban đầu, nội
dung ở phần này tập trung xác định các yêu cầu mà hệ thống cần đáp ứng, Xác định các
chức năng cấn có, luồngdữ liệu và các thực thể trong hệ thống.
Chương 3: Thiết kế hệ thống: Từ dữ liệu có được qua phần phân tích hệ thống, nội
dung phần 3 thực hiện việc thiết kế cơ sở dữ liệu, xử lý các chức năng, thiết kế chương
trình.
Cùng với sự chỉ bảo tận tình của thầy Lưu Đức Trung và các anh chị trong Công ty
cổ phần công nghệ Enuy Việt Nam, em đã hoàn thành website này. Trong quá trình phân
Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2


tích thiết kế hệ thống không thể tránh khỏi những sai sót mong thầy đóng góp ý kiến để
website được hoàn thiện hơn.
Qua đây, em xin gửi lời cám ơn tới các thầy cô khoa công nghệ thông tin đã giúp đỡ
chúng em rất nhiều trong xuốt quá trình là đồ án tốt nghiệp cũng như trong những năm hoc

qua. Em xin chân thành cảm ơn!
Sinh viên thực hiện
Trần Văn Long

Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2


MỤC LỤC

Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2


DANH MỤC TỪ VIẾT TẮT
Từ viết tắt

Tiếng việt

CNTT

Công nghệ thông tin

CSDL

Cơ sở dữ liệu

TMĐT

Thương mại điện tử

ĐATN


Đồ án tốt nghiệp

Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2


7

CHƯƠNG MỞ ĐẦU: TỔNG QUAN ĐỀ TÀI NGHIÊN CỨU
1 TÍNH CẤP THIẾT CỦA ĐỀ TÀI NGHIÊN CỨU
Sự phát triển của Internet trong những năm gần đây đang tăng nhanh (Theo thống kê
của "We are Social" - một tổ chức có trụ sở chính ở Anh nghiên cứu độc lập về truyền
thông xã hội, tính đến ngày 01/01/2015, Việt Nam có 39,8 triệu người sử dụng Internet,
tương đương với 44% dân số). Internet đang đẩy manh các quá trình thương mại và mở ra
các cách làm ăn mới, các cách hoạt động kinh doanh mới. Vậy nên, đây là cơ hội để doanh
nghiệp, cá nhân, tổ chức khai thác nguồn lợi từ Internet.
CNTT và TMĐT bùng nổ và mang lại rất nhiều lợi ích cho các doanh nghiệp như mở
rộng tiếp cận thị trường, giảm chi phí đầu tư, tự động hóa các giao dịch, cải thiện dịch vụ
hỗ trợ khách hàng,… Các doanh nghiệp , cửa hàng Việt Nam đang cố gắng ứng dụng
CNTT và TMĐT vào lĩnh vực kinh doanh của mình. Dẫn đến cuộc cạnh tranh ngày càng
gay gắt hơn trong việc chiếm lĩnh thị trường và làm hài lòng khách hàng. Để có thể tồn tại
được, đòi hỏi mỗi doanh nghiệp, tổ chức phải xây dựng website chuyên nghiệp để đưa
thông tin về họ và sản phẩm đến người quan tâm và khách hàng, tránh những phiền hà mà
giao thức kinh doanh truyền thống đang gặp phải.
Đã có rất nhiều doanh nghiệp cung cấp dịch vụ đặt hàng trung quốc, tuy nhiên không
phải doanh nghiệp nào cũng mang lại hiệu quả như mong đợi và đang gặp khá nhiều vấn
đề trong việc làm cách nào đưa sản phẩm mình cung cấp tới khách hàng.
Từ những vấn đề cấp thiết trên, tác giả đã chọn đề tài: “Xây dựng và cài đặt website
thương mại điện tử bán các sản phẩm từ các website lớn của Trung Quốc” để quảng cáo và
bán hàng về sản phẩm của các website thương mại điện tử lớn của Trung Quốc một cách

hiệu quả hơn.
2. CÁC MỤC TIÊU NGHIÊN CỨU VÀ NHIỆM VỤ NGHIÊN CỨU
Đề tài đồ án: “Xây dựng và cài đặt website thương mại điện tử bán các sản phẩm từ
các website lớn của Trung Quốc” thực hiện các mục tiêu cụ thể sau.
Thứ nhất, tóm lược và hệ thống hóa một số lý luận cơ bản về CNTT, TMĐT và hệ
thống bán hàng trực tuyến.
Thứ hai, vận dụng những lý luận đó để xây dựng và cài đặt website thương mại điện
tử bán các sản phẩm từ các website lớn của Trung Quốc.
Thứ ba, trên cơ sở những xây dựng và cài đặt website, đánh giá những hiệu quả đã
đạt được và đưa ra phương hướng cho đề tài.
3. ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU
3.1 Đối tượng nghiên cứu đề tài
• Về nhà quản lý kinh doanh: cần có một trang thông tin để quảng bá, mở rộng thị

trường.
• Về người tiêu dùng: cần có thông tin và phương thức mua hàng đảm bảo mà

không mất nhiều công sức.
3.2 Phạm vi nghiên cứu đề tài
• Tìm hiểu kỹ thuật lập trình và cách thức hoạt động trong PHP
• Hiểu được cách lưu trữ dữ liệu trong MySQL
• Sử dụng ngôn ngữ PHP và hệ quản trị MySQL để xây dựng trang web động.

Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2


8

4. PHƯƠNG PHÁP NGHIÊN CỨU
Để thực hiện những yêu cầu của đề tài, em đã khảo sát thực tế doanh nghiệp và tìm

hiểu các tài liệu xây dựng website qua giáo trình, sách, báo, Internet…
Từ đó có thể xây dựng website thương mại điện tử bán các sản phẩm từ các website
lớn của Trung Quốc từ những thông tin hệ thống cũ và từ những gì khảo sát thực tế cũng
như xu thế phát triển của Internet và xu hướng của người dùng.

Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2


9

CHƯƠNG 1: MỘT SỐ CƠ SỞ LÝ LUẬN CƠ BẢN
1.1 CÔNG NGHỆ THÔNG TIN
Ở Việt Nam, khái niệm Công nghệ Thông tin được hiểu và định nghĩa trong nghị
quyết Chính phủ 49/CP kí ngày 04/08/1993: "Công nghệ thông tin là tập hợp các phương
pháp khoa học, các phương tiện và công cụ kĩ thuật hiện đại - chủ yếu là kĩ thuật máy tính
và viễn thông - nhằm tổ chức khai thác và sử dụng có hiệu quả các nguồn tài nguyên thông
tin rất phong phú và tiềm năng trong mọi lĩnh vực hoạt động của con người và xã hội".
Công nghệ thông tin là ngành quản lý công nghệ và mở ra nhiều lĩnh vực khác nhau
như phần mềm máy tính, hệ thống thông tin, phần cứng máy tính, ngôn ngữ lập trình
nhưng lại không giới hạn một số thứ như các quy trình và cấu trúc dữ liệu. Tóm lại, bất cứ
thứ gì mà biểu diễn dữ liệu, thông tin hay tri thức trong các định dạng nhìn thấy được,
thông qua bất kỳ cơ chế phân phối đa phương tiện nào thì đều được xem là phần con của
lĩnh vực công nghệ thông tin.
Công nghệ thông tin cung cấp cho các doanh nghiệp bốn nhóm dịch vụ lõi để giúp
thực thi các chiến lược kinh doanh đó là: quá trình tự động kinh doanh, cung cấp thông tin,
kết nối với khách hàng và các công cụ sản xuất.
1.2 THƯƠNG MẠI ĐIỆN TỬ
1.2.1 Khái niệm thương mại điện tử
Thương mại điện tử (Còn gọi là E-commerce hay E-Business) là quy trình mua bán
hàng hóa và dịch vụ thông qua các phương tiện điện tử và mạng viễn thông, đặc biệt là qua

máy tính và mạng Internet.
1.2.2 Lợi ích của thương mại điện tử
Lợi ích lớn nhất mà TMĐT mang lại đó chính là tiết kiệm được chi phí lớn tạo thuận
lợi cho các bên giao dịch. Giao dịch bằng phương tiện điện tử nhanh hơn là giao dịch bằng
truyền thông, ví dụ gửi fax hay thư điện tử thì nội dung thông tin sẽ đến người nhận nhanh
hơn là gửi thư. Các giao dịch qua internet có chi phí rất rẻ, một doanh nghiệp có thể gửi
thư tiếp thị, chào hàng đến hàng loạt khách hàng chỉ với chi phí giống như gửi cho một
khách hàng. Với TMĐT, các bên có thể tiến hành giao dịch khi ở cách xa nhau, giữa thành
phố với nông thôn, từ nước này sang nước khác hay nói cách khác là không bị giới hạn bởi
không gian địa lý. Điều này cho phép các doanh nghiệp tiết kiệm chi phí đi lại, thời gian
gặp mặt trong khi mua bán. Với người tiêu dùng họ có thể ngồi tại nhà để đặt hàng, mua
sắm nhiều loại hàng hóa dịch vụ thật nhanh chóng.
1.2.3 Ứng dụng TMĐT vào kinh doanh.
Một số ứng dụng chung nhất của Thương mại điện tử được liệt kê dưới đây:
• Tài liệu tự động hóa ở chuỗi cung ứng và hậu cần
• Hệ thống thanh toán trong nước và quốc tế
• Quản lý nội dung doanh nghiệp
• Nhóm mua
• Trợ lý tự động trực tuyến
• IM (Instant Messaging)
• Nhóm tin
• Mua sắm trực tuyến và theo dõi đặt hàng
• Ngân hàng điện tử
• Văn phòng trực tuyến
• Phần mềm giỏ hàng
• Hội thảo truyền thông trực tuyến
• Vé điện tử
Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2



10

1.3 KIẾN THỨC CƠ SỞ VỀ XÂY DỰNG WEBSITE
1.3.1 Khái niệm website
Theo Wikipedia, website là một tập hợp trang web, thường chỉ nằm trong một tên
miền hoặc tên miền phụ trên World Wide Web của Internet. Một trang web là tập tin
HTML hoặc XHTML có thể truy nhập dùng giao thức HTTP. Trang mạng có thể được xây
dựng từ các tệp tin HTML (trang mạng tĩnh) hoặc vận hành bằng các CMS chạy trên máy
chủ (trang mạng động). Trang mạng có thể được xây dựng bằng nhiều ngôn ngữ lập trình
khác nhau (PHP,.NET, Java, Ruby on Rails...)
Website là kênh thông tin để quảng bá, giới thiệu dịch vụ, sản phẩm, mô hình hoạt
động của doanh nghiệp, cửa hàng đến với người tiêu dùng khắp mọi nơi.
Có nhiều loại website như: Website giới thiệu, quảng bá dịch vụ, sản phẩm, website
thương mại điện tử(TMĐT), website tin tức, rao vặt, kênh thông tin giải trí...Tùy vào nhu
cầu mà quý doanh nghiệp cần chọn loại website cho phù hợp.
Và Website là một công cụ tất yếu không thể thiếu trong hoạt động kinh doanh online
của mỗi doanh nghiệp. Một doanh nghiệp, cửa hàng, cá nhân có thể sở hữu nhiều website
ứng với mỗi dịch vụ, sản phẩm khác nhau, để mở rộng thị trường rộng lớn hơn.
1.3.2 Ngôn ngữ thiết kế web
1.3.2.1 HTML
HTML (HyperText Markup Language) còn được gọi là ngôn ngữ đánh dấu
siêu văn bản, được tạo ra nhằm cấu trúc lên một trang web với các mẩu thông tin
được trình bày trên World Wide Web.
Ví dụ

Một trang web được bắt đầu bằng thẻ mở <html> và kết thúc bằng thẻ đóng
</html>. Trong đó bao gồm 2 nội dung chính là thông tin header được khai báo
trong cặp thẻ <head></head>, nội dung trang web được khai báo trong cặp thẻ
<body></body>.
Nội dung đặt trong cặp thẻ <head></head> bao gồm:






Tiêu đề trang web (title)
Phần mô tả trang web (description)
Tên tác giả (author).
Từ khóa liên quan đến nội dung trang web …

Nội dung đặt trong cặp thẻ <body></body> được hiển thị trên trang web, bao gồm
các cặp thẻ như là

, <div></div>, <table></table>, <span></span>,

,

, <a></a>, <form></form>…
1.3.2.2 CSS

Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2


11

CSS (Cascading Style Sheet). Website được cấu tạo từ các thẻ html nhưng
với những thẻ html thì mới chỉ thể hiện được bộ khung của website. Để căn chỉnh,
trình bày cho đẹp mắt thì ta cần sử dụng ngôn ngữ CSS. Đây là ngôn ngữ được
dùng rất nhiều trong lập trình web, thường đi cùng với ngôn ngữ html.
Chúng ta có 3 cách để chèn CSS vào trang HTML
 Chèn nội dung CSS vào cặp thẻ <style></style> trong phần <head></head>

của trang web.
 Chèn trực tiếp vào bên trong thẻ HTML
 Liên kết với một file .css bên ngoài.


Trong thực tế, cách thứ 3 được các lập trình viên sử dụng nhiều nhất do tính tiện
dụng và linh hoạt.
1.3.2.3 PHP
PHP (viết tắt hồi quy "PHP: Hypertext Preprocessor") 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.
1.3.2.4 MySQL
Hệ quản trị cơ sở dữ liệu (tiếng Anh: Database Management System - DBMS), là
phần mềm hay hệ thống được thiết kế để quản trị một cơ sở dữ liệu. Cụ thể, các chương
trình thuộc loại này hỗ trợ khả năng lưu trữ, sửa chữa, xóa và tìm kiếm thông tin trong một
cơ sở dữ liệu (CSDL)
MySQL là một RDBMS nhanh và dễ dàng để sử dụng. MySQL đang được sử dụng
cho nhiều công việc kinh doanh từ lớn tới nhỏ. MySQL được phát triển, được công bố,
được hỗ trợ bởi MySQL AB, là một công ty của Thụy Điển. MySQL trở thành khá phổ
biến vì nhiều lý do:










MySQL là mã ngồn mở.
MySQL là một chương trình rất mạnh mẽ.
MySQL sử dụng một Form chuẩn của ngôn ngữ dữ liệu nổi tiếng là SQL.

MySQL làm việc trên nhiều Hệ điều hành và với nhiều ngôn ngữ như PHP, PERL,
C, C++, Java, …
MySQL làm việc nhanh và khỏe ngay cả với các tập dữ liệu lớn.
MySQL rất thân thiện với PHP.
MySQL hỗ trợ các cơ sở dữ liệu lớn, lên tới 50 triệu hàng hoặc nhiều hơn nữa
trong một bảng. Kích cỡ file mặc định được giới hạn cho một bảng là 4 GB,
nhưng có thể tăng kích cỡ này để đạt tới giới hạn lý thuyết là 8 TB.
MySQL là có thể điều chỉnh. Giấy phép GPL mã nguồn mở cho phép lập trình
viên sửa đổi phần mềm MySQL để phù hợp với môi trường cụ thể.

1.3.3 Kiến trúc và frameword
1.3.3.1 Kiến trúc Client/Server
Kiến trúc Client/ Server là kiến trúc nổi tiếng trong mạng máy tính, hầu hết
các website hoạt động dựa trên kiến trúc này. Trong đó Client là máy khách gửi
yêu cầu đến máy Server. Tại đây thì Server lắng nghe các yêu cầu từ máy Client,
nhận thông tin từ Client sau đó xử lý, trả kết quả về cho máy Client.

Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2


12

Hình 1.1 Kiến trúc Client/Server.
1.3.3.2 Mô hình MVC
Mô hình MVC (Model – View – Controller) là một trong những mô hình thiết kế
được sử dụng trong kỹ thuật phát triển phần mềm, giúp cho các developer tách ứng dụng
thành 3 phần là Model – View – Controller. Mỗi thành phần có một nhiệm vụ, chức năng
riêng biệt, giúp phát triển ứng dụng nhanh, dễ bảo trì, nâng cấp hệ thống.

Hình 1.2 Mô hình MVC

Trong đó:
Model: Là thành phần chứa tất cả các nghiệp vụ logic, phương thức xử lý, truy xuất
database, đối tượng mô tả dữ liệu, các ràng buộc quan hệ…
View: Đảm bảo việc hiển thị thông tin, tương tác với người dùng, nơi chứa tất cả các
đối tượng GUI như textbox, images… Hay nói một cách đơn giản Model là tập hợp các
form hoặc các file HTML.
Controller: Là phần quan trọng nhất trong mô hình MVC. Đóng vai trò nhận các yêu
cầu từ phía client, tiến hành xử lí thông tin rồi trả thông tin về cho client. Cách thức hoạt
Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2


13

động của mô hình MVC. Khi một máy client tương tác với view (bằng các trình duyệt trên
PC hay Mobile). Gửi một yêu cầu đến phía server. Controller sẽ tiếp nhận yêu cầu, tiến
hành xử lý yêu cầu đó, nếu thông tin liên quan đến CSDL thì Controller gọi đến Model để
lấy dữ liệu. Sau đó trả kết quả sau khi sử lý cho View. View sẽ hiển thị thông tin dưới dạng
các thẻ HTML cho người dùng.
1.3.3.3 Framework CodeIgniter
CodeIgniter là một nền tảng ứng dụng web (web application framework) nguồn mở
được dùng để xây dựng các ứng dụng web động tương tác với PHP. Nó cho phép các nhà
phát triển xây dựng một ứng dụng web nhanh hơn - so với việc viết mã hỗn tạp - bằng cách
cung cấp 1 bộ thư viện đầy đủ cho các tác vụ thông thường, cũng như cung cấp một mô
hình tương tác đơn giản và dễ hiểu cho việc kết nối tới những bộ thư viện đó
Sơ lược các tính năng cơ bản của CodeIgniter Framework:
CodeIgniter khuyến khích các lập trình viên sử dụng mô hình model-view-controller
architectural pattern cho các ứng dụng web của mình.
CodeIgniter cũng mang một số các khái niệm đặc thù và các tính năng cơ bản của
các mô hình MVC khác như Ruby on Rails:










Hỗ trợ kết nối và tương tác đa nền tảng cơ sở dữ liệu
Tương tác với cơ sở dữ liệu thông qua active records
Session Management (quản lí Session)
Định dạng và chuẩn hóa form và dữ liệu đầu vào
Hỗ trợ Caching toàn trang để tăng tốc độ thực thi và giảm tải tối thiểu cho máy
chủ.
Scaffolding (Bị phản đối từ cộng đồng nên đã được lược bỏ trong phiên bản 2.0
trở về sau)
Hỗ trợ Template Engine hoặc sử dụng chính PHP tags để điều hướng trong Views
Hỗ trợ Hooks, các lớp ngoại (Class Extensions), và các Plugins

Trong số các mô hình framework MVC khác, CodeIgniter có các ưu điểm sau:







Tương thích hoàn toàn với PHP 4. Nếu sử dụng PHP 5 sẽ dùng được các tính năng
hữu ích khác như khả năng gọi phương thức dây chuyền (method chaining
ability).

Mô hình code nhẹ cho hệ thống, cải thiện tốc độ thực thi.
Đơn giản trong việc cài đặt, cấu hình và cấu trúc thư mục.
Error Logging
Mềm dẻo trong việc định tuyến URI (URI Routing)

Framework này tích hợp thêm vào một số lớp thư viện khác mà các framework khác
chưa mặc định tích hợp:









Bảo mật và XSS Filtering
Gửi Email, hỗ trợ đính kèm, HTML/Text email, đa giao thức (sendmail, SMTP,
and Mail) và các thứ khác.
Thư viện chỉnh sửa ảnh (cắt ảnh, thay đổi kích thước, xoay ảnh, v.v..). Hỗ trợ GD,
ImageMagick, và NetPBM
Upload file
FTP Class - Tương tác với máy chủ thông qua giao thức FTP
Localization
Phân trang tự động
Mã hóa dữ liệu - Data Encryption

Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2



14











Đo lường tốc độ thực thi - Benchmarking
Application Profiling
Lịch - Calendaring Class
User Agent Class
Nén - Zip Encoding Class
Trackback Class
XML-RPC Library
Unit Testing Class
Search-engine Friendly URLs
Một lượng lớn các hàm hỗ trợ (helpers)

1.3.3.4 Bootstrap
Bootstrap là một trong những CSS Framework phổ biến nhất hiện nay, do Twitter phát
triển. CSS Framework này có ưu điểm là hỗ trợ khả năng responsive (tức là trang web sẽ
tự động co giãn theo kích thước của cửa sổ trình duyệt), tương thích tốt với thiết bị cỡ nhỏ,
với sự phổ biến của smartphone, tablet hiện nay, đây là một yếu tố vô cùng quan trọng giúp
các nhà thiết kế, phát triển ứng dụng web không cần phải design một bản riêng cho mobile
hay PC, mà chỉ cần thiết kế một lần duy nhất cho mọi thiết bị. Việc này giúp tiết kiệm chi

phí cho người chủ ứng dụng.
1.3.4 Tìm hiểu ngôn ngữ PHP
1.3.4.1 Khái niệm PHP
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 của nó và khả năng phát triể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à một ngôn ngữ lập trình được kết nối chặt chẽ với máy chủ, là một công nghệ
phía máy chủ (Server-Side) và không phụ thuộc vào môi trường (cross-platform). Đây là
hai yếu tố rất quan trọng, thứ nhất khi nói công nghệ phía máy chủ tức là nói đến 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 môi trường
cho phép PHP chạy trên hầu hết trên các hệ điều hành như Windows, Unix và nhiều biến
thể của nó... Đặc biệt các mã kịch bản PHP viết trên máy chủ này sẽ làm việc bình thường
trên máy chủ khác mà không cần phải chỉnh sửa hoặc chỉnh sửa rất ít.
Khi một trang Web muốn được dùng ngôn ngữ PHP thì phải đáp ứng được tất cả các
quá trình xử lý thông tin trong trang Web đó, sau đó đưa ra kết quả ngôn ngữ HTML.
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 (ví dụ, khi người dùng gửi một biểu mẫu hoặc chuyển tới một URL).
1.3.4.2 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, Perl... và một số loại
khác nữa. Vậy tại sao chúng ta lại 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ác giả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 cơ sở dữ liệu 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.
Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2



15

Đặc biệt PHP là mã nguồ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 tiến nó,
nâng cao để khắc phục các lỗi trong các 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 các lập trình
viên chuyên nghiệp, mọi ý tuởng của các bạn PHP có thể đáp ứng một cách xuấ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.
1.3.4.3 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ên má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ư là một trang
HTML têu chuẩn. Như ta đã nói, PHP cũng chính là một trang HTML nhưng có nhúng mã
PHP và có phần mở rộng là HTML. Phần mở của PHP được đặt trong thẻ mở đóng ?>. Khi trình duyệt truy cập vào một trang PHP, Server sẽ đọc 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 của đ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.4.4 Các loại thẻ PHP
Có 4 loại thẻ khác nhau mà bạn có thể sử dụng khi thiết kế trang PHP:
-

Kiểu Short: Thẻ mặc định mà các nhà lập trình PHP thường sử dụng.
Ví dụ: <? Echo “Well come to PHP. ” ;?>


-

Kiều đinh dạng XML: Thẻ này có thể sử dụng với văn bản đinh dạng XML
Ví dụ: <? Php echo “Well come to PHP with XML”;>?

-

Kiểu Script: Trong trường hợp bạn sử dụng PHP như một script tương tự khai
báo JavaScipt hay VBScript:
Ví dụ: <script language= “php”>

echo “Php Script”;
</script>
-

Kiểu ASP: Trong trường hợp bạn khai báo thẻ PHP như một phần trong trang
ASP.
Ví dụ: <% echo “PHP – ASP”; %>

*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ó

Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2


16

ảnh hưởng đến sự thể hiện của trang Web (nhiều khoảng trắng liên tiếp sẽ chỉ thể hiện
dưới dạng một khoảng trắng đơn).

1.3.4.5 Các kiểu dữ liệu
Dữ liệu đến từ Script đều là biến PHP, bạn có thể nhận biết chúng bằng cách sử dụng
dấu $ trước tên biến.
Số nguyên
Số nguyên được khai báo và sử dụng giá trị giống với C.
Ví dụ:
$a=12345;
$a=-456;
Số thực
Ví dụ:
$a=2. 123;
$b=3. 1e3;
Xâu
Xâu có hai cách để xác định 1 xâu: Đặt giữa 2 dấu ngoặc kép (“ ”) hoặc giữa 2 dấu
ngoặc (‘ ’).
Mảng
Mảng thực chất gồm 2 bảng: Bảng chỉ số và bảng liên kết.
 Mảng một chiều:

Có thể dùng hàm List() hoặc Array(). Có thể dùng các hàm aort(), ksort(), sort(),
uaort(),... để 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ảng 2 chiều

Ví dụ:
$a[1]=$f;
$a[1][2]=$f;
$a[“abc”][2]=$f;
...
1.3.4.6 Biến - giá trị
PHP quy định một biến được biểu diễn bắt đầu bằng dấu $, sau đó là một chữ cái

hoặc dấu gạch dưới.
Một số biến đã được khai báo sẵn
HTTP_GET_VARS: Mảng các giá trị nguyên truyền tới script thông qua phương
thức HTTP GET. Chỉ có tác dụng nếu “track_vars” .Trong cấu hình được đặt hoặc chỉ dẫn
<? Php_track_vars?>.
HTTP_POST_VARS: Mảng các giá trị nguyên truyền tới script thông qua phương
thức HTTP POST.
HTTP_COOKIE_VARS: Một mảng các giá trị được truyền tới script hiện tại bằng
HTTP cookie. Chỉ có tác dụng nếu “track_vars” trong cấu hình được đặt hoặc chỉ dẫn php_track_vars?>...
Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2


17

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 (global) có tác
dụng trong một hàm ta cần khai báo lại. Nếu không có giá trị của biến sẽ được coi như là
cục bộ trong hàm.
VD:
$a=1;
$b=2;
Function Sum(){
Global $a, $b;
$b=$a+$b;
}
Sum();
Echo $b;
Khi có khai báo global, $a và $b được biết đó là những biến toàn cục. Nếu không có
khai báo global, $a và $b chỉ được coi là các biến bên trong hàm Sum().

Tên biến
Một biến có thể gắn với một cái tên
Ví dụ:
$a= “chao”;
$$a= “cacban”;


$Chao= “cacban”
Và echo”$a${chao}”;
Kết quả sẽ là “chaocacban”
1.3.4.7 Các giá trị bên ngoài phạm vi PHP
HTML Form: Khi 1 giá trị gắn với 1 file php qua phương thức POST
Ví dụ:
<form action = “top. php” method= “post”>
Name: < input type = “text” name = “name” ><BR>
<input type = “Submit”>
</form>
PHP sẽ tạo 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 một Form
Vì vậy, bạn có thể nhóm những 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 tuỳ chọn.
Khi tính chất track_vars được đặt trong cấu hình hoặc có chỉ dẫn >. Các giá trị được submit sẽ lấy ra qua phương thức GET và POST có thể lấy ra từ 2 mảng
toàn cục $HTTP_POST_VARS và $HTTP_GET_VARS

Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2


18


1.3.4.8 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 được thực hiện trong script file hiện tại.
_PHP_VERSION_: version của PHP đang chạy
TRUE
FALSE
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.3.4.9 Biểu thức
Biểu thức là một 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 nhất: Số nguyên, số
thực và xâu. Ngoài ra còn có mảng và đối tượng. Mỗi kiểu giá trị này có thể gán cho các
biến hay làm giá trị ra của các hàm.
1.3.4.10 Các cấu trúc lệnh
Các lệnh điều kiện và toán tử



Mỗi câu lệnh điều kiện bao gồm một mệnh đề if:
If(điều kiện){
//thực hiện một điều gì đó
}
Điều kiện này có thể được mở rộng thành:
If(điều kiện){
//thực hiện một điều gì đó
} else {
//thực hiện một điều khác

}
Và:
If(điều kiện 1){
//thực hiện một điều gì đó
} elseif(điều kiện 2) {
//thực hiện một điều khác
}else {
//thực hiện một điều khác nữa
}

Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2


19

Các toán tử thường được sử dụng với câu lệnh điều kiện
Kí hiệu

Ý nghĩa

Dạng

Ví dụ

=

Được gán giá trị của

Gán


$n=1

==

Bằng

So sánh

$x==$y

!=

Không bằng

So sánh

$x!=$y

<

Nhỏ hơn

So sánh

$x<$y

>

Lớn hơn


So sánh

$x>$y

<=

Nhỏ hơn hoặc bằng

So sánh

$x<=$y

>=

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

So sánh

$x>=$y

!

Phủ định

Logic

!$x

&&


AND

Logic

$x && $y

||

OR

Logic

$x || $y

PHP 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-elseif-else quá dài. Cú pháp của câu lệnh switch như sau:
Switch($variable){
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
}
Phát biểu vòng lặp While




Phát biểu đơn giản nhất trong PHP là vòng lặp While, cho phép thực thi khối lệnh
trong While cho đến điều kiện của While là True như cú pháp:
While (condition)
{
Expression;
}
Trong đó:
Condition: Biểu thức điều kiện, biến,...
Expression: Khối lệnh trong vòng lặp while


Vòng lặp For:
For(expression1;condition;expression2)

Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2


20

{
expression3;
}
Trong đó:
Condition: điều kiện giới hạn của vòng lặp for
Expression1: Giá trị khởi đầu của vòng lặp for
Expression2: Giá trị lặp của vòng lặp for
Expression3: Khối lệnh bên trong của vòng lặp for


Vòng lặp do... while

Do
{ expression }
while(condition)
Trong đó:
Expression: khối lệnh bên trong vòng lặp do... while
Condition: biểu thức điều kiện, biến...



Vòng lặp while

While(condition)
{
expression;
}
Trong đó: Biểu thức điều kiện, biến...
Expression: Khối lệnh bên trong vòng lặp while


Exit: Thoát khỏi các vòng lặp hay phát biểu điều khiển nào đó.

1.3.4.11 Hàm
Dùng giống với C++. Ngoại trừ bạn không cần phải khai báo kiểu cho tham số của hàm:


Tham trị

Ví dụ: function takes_array($input)
{
echo “$input[0] + $input[1] = “, $input[0]+$input[1];

}


Tham biến

Function add_some_extra (&$string)
{$string. =’and somthing extra’; }


Tham số có giá trị mặc định
Function makecoffee($type = “cappucino”)
{

Return “Making a cup of $type. \n”; }

Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2


21

Chú ý: Khi sử dụng hàm có đối số có giá trị mặc định, các biến này sẽ phải nằm về
phía phải nhất trong danh sách đối số.
VD: Sai
Function makeyogurt($type=”acidophilus”, $flavour)
{
Return “Making a bowl of $type $flavour. \n”;
}
Đúng:
Function makeyogurt($flavour, $type=”acidophilus”)
{

Return “Making a bowl of $type $flavour. \n”;
}


Giá trị trả lại của hàm

Có thể là bất kỳ giá trị nào. Tuy vậy, không thể trả lại nhiều giá trị riêng lẻ
nhưng có thể trả lại một mảng các giá trị.


Hàm biến

PHP cho phép sử dụng hàm giá trị nghĩa là khi một biến được gọi có kèm theo dấu
ngoặc đơn, PHP sẽ tìm hàm có cùng tên với giá trị biến đó thực hiện.
1.3.4.12 Các toán tử
Các phép số học: +, -, *, /%
Các toán tử logic: And, or, xor: &&, ||, !
Toán tử thao tác với bít: &, |, ^, ~, <<, >>
Toán tử so sánh: ==, !=, <, >, <=, >=, ===
Toán tử điều khiển lỗi: @
Khi đứng trước 1 biểu thức thì các lỗi của biểu thức sẽ bị bỏ qua và lưu trong
$PHP_errormsg
$link=mysql_connect(sv, username, pass);
if(!$link)
die("khong ket noi duoc mysql");
?>
Toán tử thực thi:’ ‘PHP sẽ thực hiện nội dung nằm giữa 2 dấu ‘ như 1 lệnh shell. Trả
ra giá trị là kết quả thực hiện lệnh.
VD:

$output=’Is-al’; //liệt kê các file bằng lệnh Linux
Echo”$output”;

Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2


22

1.3.4.13 Lớp và đối tượng
Class: là tập hợp các biến và hàm làm việc với các biến này. Một lớp có định dạng
như sau:
Class Cart{
Var $items;
Function add_item($a)
Lớp Cart ở đây là một kiểu dữ liệu
1.3.4.14 Tham chiếu
Tham chiếu trong PHP có nghĩa là lấy cùng giá trị bằng nhiều tên biến khác nhau.
Khác với con trỏ C, tham chiếu là một bảng các bí danh. Chú ý: Trong PHP, tên biến và
nội dung của các biến khác nhau. Vì vậy, cùng một nội dung có thể có nhiều tên khác
nhau.
Tham chiếu PHP cho phép bạn tạo 2 biến có cùng nội dung.
Ví dụ:
$a=&$b; ==> $a, $b trỏ tới cùng một giá trị
Tham chiếu truyền giá trị bằng tham chiếu. Thực hiện việc này bằng cách tạo một
hàm cục bộ và truyền giá trị được tham chiếu.
Ví dụ:
function f(&$var)
{$var++; }
$a=5;

f($a);
--> Kết quả: $a=6;
Giá trị trả lại của một hàm bằng tham chiếu rất tiện lợi khi bạn muốn sử dụng hàm để
tìm 1 giá trị trong một phạm vi nào đó.
1.3.4.15 Khai báo và sử dụng Session, Cookie
Trang web HTML thông thường sẽ không thể truyền dữ liệu từ trang này sang trang
khác. Nói 1 cách khác là: tất cả thông tin trở thành quên lãng khi một trang web mới được
tải. Điều này gây khó khăn cho một số công việc như là mua hàng (shopping carts) những
thứ cần thiết dữ liệu (sản phẩm người dùng đã chọn) ghi nhớ từ trang này sang trang khác.
Khái niệm điều khiển Session
PHP session giải quyết vấn đề này bằng cách cho phép lưu trữ dữ liệu của người
dùng trên server để sử dụng về sau (như username, món hàng ...). Tuy nhiên những thông
tin session này chỉ là tạm thời và thường bị xoá đi ngay khi người dùng rời khỏi trang web
đã dùng session.
Chính vì tính tạm thời này mà nếu ứng dụng của bạn cần thiết lưu trữ dữ liệu 1 cách
lâu dài, bạn hãy dùng các cách lưu trữ khác như là csdl Mysql.
Session hoạt động bằng cách tạo 1 chuỗi unique (UID) cho từng vistore và chứa
thông tin dựa trên ID đó. Việc này sẽ giúp tránh tình trạng dữ liệu bị xung đột giữa các
user

Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2


23

Bắt đầu với PHP Session
Việc đầu tiên trước khi bạn làm bất cứ việc gì với session là bạn phải chạy nó trước,
và nó được đặt ngay trên đầu trong code của bạn, trước khi HTML được xuất ra.
Dưới đây là 1 ví dụ đơn giản về việc tạo session trong PHP
PHP Code:

session_start(); // start up your PHP session!
?>
Đoạn mã ngắn trên sẽ đăng kí cho người dùng 1 session ở trên Server, cho phép bạn
lưu thông tin của người dùng và đưa nó vào UID cho session của user đó.
Lưu giá trị của session
Khi bạn muốn lưu trữ 1 thông tin nào đó ở session, được dùng như 1 mảng kết hợp.
đó là nơi bạn lưu và lấy dữ liệu ra. Sau đây là 1 ví dụ đơn giản cho việc đơn giản này.
PHP Code:
session_start();
$_SESSION['views'] = 1; // lưu views
echo "Pageviews = ". $_SESSION['views']; //lấy views và hiện thị
?>
Output:
Pageviews = 1
Trong ví dụ này, chúng ta đã học được cách lưu trữ của biến session thông qua mảng
kết hợp $_SESSION và cũng như cách lấy nó ra.
Sử dụng SESSION
Bây giờ chúng ta đã biết cách lưu và lấy dữ liệu từ biến $_SESSION, mọi chuyện
thật dễ dàng phải không, và tiếp theo ta sẽ tìm hiểu 1 vài hàm liên quan đến session.
Khi bạn tạo 1 biến và lưu nó vào 1 session, bạn có lẽ muốn dùng nó sau này, tuy
nhiên, trước khi bạn dùng biến session đó, bạn nên kiểm tra nó đã được khởi tạo hay chưa.
Thao tác này được thực hiện thông qua hàm isset, isset là 1 hàm kiểm tra bất kì biến
nào và nó đã được khởi tạo và gán giá trị hay chưa.
Qua nhưng ví dụ trên, chúng ta có thể tạo 1 bộ đếm đơn giản cho 1 trang bằng cách
sử dùng isset để kiểm tra nó đã được tạo hay chưa và gán giá trị cho nó.
Ví dụ:
PHP Code:

session_start();
if(isset($_SESSION['views']))
$_SESSION['views'] = $_SESSION['views']+ 1;
else
$_SESSION['views'] = 1;
echo "views = ". $_SESSION['views'];
?>
Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2


24

Trong lần chạy đầu tiền của trang câu lệnh If sẽ trả về false vì chưa có biến session
[views] nào được tạo cả. Tuy nhiên, khi bạn refresh lại trang đó, thì câu lệnh if sẽ trả về giá
trị true và biến đếm counter sẽ tăng lên 1 đơn vị, và sẽ tăng cho mỗi lần chạy của trang đó
lên 1.
Xóa và Hủy Session
Mặt dù dữ liệu trong session chỉ mang tính chất tạm thời và nó không yêu cầu phải
xóa sau khi sử dụng, nhưng có thể trong trường hợp nào đó bạn phải xóa dữ liệu của nó
cho mục đích của bạn.
Hãy tưởng tượng bạn đang điều hành 1 doanh nghiệp online, và 1 thanh viên đang
dùng website của bạn mua 1 món hàng. Thành viên đó đã hoàn tất việc mua hàng (phiên
giao dịch) trên website, do đó , bạn phải xóa mọi thứ trong session sau khi việc này hoàn
tất.
PHP Code:
session_start();
if(isset($_SESSION['cart']))
unset($_SESSION['cart']);
?>

Bạn cũng có thể hủy hoàn toàn các session bằng cách gọi hàng session_destroy
PHP Code:
session_start();
session_destroy();
?>
Destroy sẽ reset session của bạn, do đó không nên gọi hàm này trước khi bạn còn
muốn thao tác lên dữ liệu chứa trong session đó.
Khái niệm Cookie:
Cookie là một mẩu nhỏ thông tin được lưu trữ xuống từng máy tính truy cập đến
Web Site của chúng ta. Có thể gán cookie trên máy tính của người dùng thông qua HTTP
Header, bằng cách khai báo như sau:
Set – Cookie : Name = Value; [expires=Date;]
[path = Path;] [domain = Domain_name;] [secure]
Khai báo trên tạo ra cookie với tên là Name, giá trị là Value, các tham số khác là
tham số tuỳ chọn. Expires là thời gian giới hạn mà cookie này không thích hợp nữa. Nếu
thời gian không cung cấp trong cookie, cookie này sẽ còn hiệu lực cho đến khi người dùng
xoá tập tin Cookie.
Gán Cookie từ PHP
Có thể gán Cookie trong PHP bằng cách sử dụng hàm setcookie(), hàm setcookie()
có cú pháp như sau:
Int setcookie (string name [,string value [, int expire[, string path [,string domain [
,int secure ]]]]])
1.3.4.16 MySQL và PHP
Để connect tới 1 CSDL trên MySQL Server rất đơn giản. Chỉ cần sử dụng hàm:
mysql_connect (host, user, password) để mở 1 kết nối tới MSQL Server với kết quả là giá
Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2


25


trị trả về của hàm (Giả sử là biến $dbname). Sau đó, dùng hàm mysql_select_db(dbname,
$link)
VD:
define('sv', 'localhost');
define('dbname', tranlong);
define('username', 'root');
define('pass', '');
$link=mysql_connect(sv, username, pass);
mysql_select_db("minhcanh", $link)or die("khong ket noi duoc co so du lieu)".
mysql_error());
?>
Để thực hiện một câu lệnh truy vấn, dùng hàm mysql_query(query, link). Giá trị trả
lại của hàm là kết quả của câu truy vấn. Nếu bỏ qua link thì kết nối cuối cùng tới MySQL
server sẽ được thực hiện.
VD:
mysql_query("insert into hang value('$mahang', '$tenhang')", $link)or
chen duoc co so du lieu". mysql_error());

die("khong

?>
Để lấy kết quả thực hiện, ta có thể dùng hàm mysql_result(), mysql_fetch_row(),
mysql_fetch_array(), mysql_fetch_object().
* mysql_fetch_row():Trả về một mảng các dữ liệu lấy từ 1 dòng trong CSDL. Nếu
đã ở cuối CSDL, giá trị trả về là false. Bạn phải dùng chỉ số của các trường trong CSDL
nếu muốn lấy dữ liệu.
VD:

mysql_select_db(dbname, $link)or die("Loi chon co so du lieu ket noi(bangdl_hang.
php):". mysql_error());
$result=mysql_query("SELECT * FROM hang")or die("Loi chon co so du
lieu(bangdl. php):". mysql_error());
$sohang=mysql_num_rows($result);
echo"số hãng nhập vào hiện nay là:$sohang.

";
echo"<table width=\"100%\" boder=1>";
echo "<tr>";
echo "<td width=\"50%\">Mã hãng</td><td width=\"50%\">Tên hãng</td>";
echo "</tr>";
while($thongtinvao=mysql_fetch_row($result))
{echo "<tr>";

Sinh viên thực hiện: Trần Văn Long - Mã sinh viên: CHCT14-13027 - Lớp: LT-CNTT-K2


×