bao cao thuc tap hang tuan

48
TRUNG TÂM ĐÀO TẠO QUẢN TRỊ MẠNG & AN NINH MẠNG QUỐC TẾ ATHENA BÁO CÁO THỰC TẬP ĐỀ TÀI : THIẾT KẾ WEB BÁN HÀNG TRỰC TUYẾN BẰNG OPENCART SVTH : TRIỆU VĂN PHÚ

Upload: vanphu2103

Post on 29-Nov-2014

174 views

Category:

Documents


1 download

DESCRIPTION

 

TRANSCRIPT

Page 1: bao cao thuc tap hang tuan

TRUNG TÂM ĐÀO

TẠO QUẢN TRỊ MẠNG & AN NINH MẠNG

QUỐC TẾ ATHENA

BÁO CÁO THỰC TẬP

ĐỀ TÀI : THIẾT KẾ WEB BÁN HÀNG TRỰC TUYẾN BẰNG OPENCART

SVTH : TRIỆU VĂN PHÚ

Page 2: bao cao thuc tap hang tuan

LỜI MỞ ĐẦU

Để quán triệt nguyên tắc “học đi đôi với hành”,nhằm tạo điều kiện cho sinh

viên làm quen với thực tế, có được cái nhìn tổng hợp, giúp cho sinh viên chúng em

hạn chế được sự bỡ ngỡ khi ra trường, hàng năm nhà trường tổ chức cho sinh viên di

thực tập tại các cơ sở theo nội dung nganh nghề đào tạo. Đây là điều kiện thuận lợi

giúp chúng em phát huy được năng lực bản thân cũng như khả năng áp dụng lý thuyết

được trang bị ở trường vào thực tế.

Công nghệ thông tin đã có những bước phát triển mạnh mẽ. Máy tính điện tử

không còn là phương tiện quý hiếm mà đang ngày một gần gũi với con người.

Đứng trước sự bùng nổ thông tin, các tổ chức và các doanh nghiệp đều tìm mọi

biện pháp để xây dựng hoàn thiện hệ thống thông tin của mình nhằm tin học hóa các

hoạt động tác nghiệp của đơn vị mình.

Từ nhu cầu nói trên,trong thời gian thực tập tốt nghiệp em đã sử dụng vốn kiến

thức ít ỏi của mình tìm hiểu và học hỏi ứng dụng của công nghệ thông tin vào thực tế.

Nó chỉ mang tính chất thử nghiệm để học hỏi, trao đổi kinh nghiệm và làm quen với

thực tế.

Page 3: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

MỤC LỤC

CHƯƠNG I: NỘI DUNG THỰC TẬP TẠI NƠI THỰC TẬP.................................2a. LỊCH LÀM VIỆC TẠI NƠI THỰC TẬP............................................................2b. GIỚI THIỆU VỀ NƠI THỰC TẬP......................................................................2TRUNG TÂM ĐÀO TẠO QUẢN TRỊ MẠNG & AN NINH MẠNG QUỐC TẾ ATHENA....................................................................................................................8

CHƯƠNG 2 : TỔNG QUAN VỀ MYSQL VÀ PHP.................................................92.1 TỔNG QUAN VỀ MYSQL.................................................................................9

2.1.1 Khởi động và sử dụng....................................................................................92.1.2. Một số thuật ngữ...........................................................................................92.1.3. Loại dữ liệu trong MySQL............................................................................92.1.4. Những cú pháp cơ bản.................................................................................10

2.2 TỔNG QUAN VỀ PHP......................................................................................112.2.1 Lịch sử phát triển..........................................................................................112.2.2 Cấu trúc cơ bản.............................................................................................122.2.3. Xuất giá trị ra trình duyệt............................................................................132.2.4. Biến, hằng, chuỗi và các kiểu dữ liệu..........................................................132.2.5. Các phương thức được sử dụng trong lập trình PHP..................................142.2.6. Cookie và Session trong PHP......................................................................152.2.7. Hàm.............................................................................................................16

2.3. KẾT HỢP PHP VÀ MYSQL TRONG ỨNG DỤNG WEBSITE.....................17CHƯƠNG 3 : GIỚI THIỆU, CÀI ĐẶT VÀ VIỆT HÓA OPENCART....................18

3.1. KIẾN TRÚC CỦA OPENCART.......................................................................183.1.1. Tầng mô hình (Business process layer)......................................................213.1.2. Tầng biểu diễn (Presentation layer)............................................................213.1.3. Tầng điều khiển (Control layer)..................................................................21

3.2 : Cài đặt Xampp và Opencart..............................................................................22

SVTH: : TRIỆU VĂN PHÚ Trang 1

Page 4: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

CHƯƠNG I: NỘI DUNG THỰC TẬP TẠI NƠI THỰC TẬP

a. LỊCH LÀM VIỆC TẠI NƠI THỰC TẬP

Khi thực tập tại công ty,Ban giám đốc của TRUNG TÂM ĐÀO TẠO QUẢN TRỊ

MẠNG & AN NINH MẠNG QUỐC TẾ ATHENA đã đưa ra lịch thực tập cho sinh

viên như sau:

Làm việc 3 ngày / tuần, thứ 3, thứ 5, thứ 7. Buổi sáng bắt đầu từ 7h00 đến 10h.

Hai tuần đầu tham quan tất cả các phòng làm việc trung tâm.

Làm quen với máy tính của trung tâm

b. GIỚI THIỆU VỀ NƠI THỰC TẬPo Giới thiệu chung về trung tâm

Trung Tâm Đào Tạo Quản Trị Mạng & An Ninh Mạng Quốc Tế ATHENA được

thành lập từ năm 2004, là một tổ chức qui tụ nhiều trí thức trẻ Việt Nam đầy năng

động, nhiệt huyết và kinh nghiệm trong lãnh vực CNTT, với tâm huyết góp phần vào

công cuộc thúc đẩy tiến trình đưa công nghệ thông tin là ngành kinh tế mũi nhọn, góp

phần phát triển nước nhà.

Lĩnh vực hoạt động chính:

Trung tâm  ATHENA đã và đang tập trung chủ yếu vào đào tạo  chuyên sâu  quản

trị mạng, an ninh mạng, thương mại điện tử theo các tiêu chuẩn quốc tế của các hãng

nổi tiếng như Microsoft, Cisco, Oracle, Linux LPI , CEH,... Song song đó, trung

tâm ATHENA còn có những chương trình đào tạo cao cấp dành riêng  theo đơn đặt

hàng của các đơn vị như Bộ Quốc Phòng, Bộ Công An , ngân hàng, doanh nghiệp, các

cơ quan chính phủ, tổ chức tài chính..

+ Sau gần 10  năm hoạt động,nhiều học viên tốt nghiệp trung tâm ATHENA đã là

chuyên gia đảm nhận công tác quản lý hệ thống mạng, an ninh mạng cho nhiều bộ

ngành như Cục Công Nghệ Thông Tin - Bộ Quốc Phòng , Bộ Công An, Sở Thông Tin

Truyền Thông các tint, bưu điện các tỉnh,..

SVTH: : TRIỆU VĂN PHÚ Trang 2

Page 5: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

+ Ngoài chương trình đào tạo, Trung tâm ATHENA còn có nhiều chương trình hợp

tác  và trao đổi công nghệ với nhiều đại học lớn như đại học Bách Khoa Thành Phố

Hồ CHính Minh, Học Viện An Ninh Nhân Dân( Thủ Đức),  Học Viện Bưu Chính

Viễn Thông, Hiệp hội an toàn thông tin (VNISA), Viện Kỹ Thuật Quân Sự ,......

o Đội ngũ giảng viên :

+ Tất cả các giảng viên trung tâm ATHENA có đều tốt nghiệp từ các trường đại học

hàng đầu trong nước .... Tất cả  giảng viên ATHENA đều phải có các chứng chỉ quốc

tế như MCSA, MCSE, CCNA, CCNP, Security+, CEH,có bằng sư phạm Quốc tế

(Microsoft Certified Trainer).Đây là các chứng chỉ chuyên môn bắt buộc để đủ điều

kiện tham gia giảng dạy tại trung tâm ATHENA

+ Bên cạnh đó,Các giảng viên ATHENA thường đi tu nghiệp và cập nhật kiến

thức công nghệ mới từ các nước tiên tiến như Mỹ , Pháp, Hà Lan, Singapore,...

và truyền đạt các công nghệ mới này trong các chương trình đào tạo tại trung

tâm ATHENA

 Cơ sở vật chất: 

+ Thiết bị đầy đủ và hiện đại.

+Chương trình cập nhật liên tục, đảm bảo học viên tiếp cận với những công nghệ mới

nhất.

+ Phòng máy rộng rãi, thoáng mát.

Dịch vụ hỗ trợ:

+ Đảm bảo việc làm cho học viên tốt nghiệp khóa dài hạn.

+ Giới thiệu việc làm cho mọi học viên.

+ Thực tập có lương cho học viên khá giỏi.

+ Ngoài giờ chính thức, học viên được thực hành miễn phí, không giới hạn thời gian.

+ Hỗ trợ kỹ thuật thuật không thời hạn trong tất cả các lĩnh vực liên quan đến máy

tính, mạng máy tính, bảo mật mạng.

+ Hỗ trợ thi Chứng chỉ Quốc tế.

SVTH: : TRIỆU VĂN PHÚ Trang 3

Page 6: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

Một số hình ảnh về trung tâm.

Trung Tâm ATHENA - 2 Bis Đinh Tiên Hoàng , ĐaKao, Q1 , Tp HCM

SVTH: : TRIỆU VĂN PHÚ Trang 4

Page 7: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

Trung tâm ATHENA - 92 Nguyễn Đình Chiểu ,DaKao, Q1 , Tp HCM

Khóa học quản trị hệ thống mạng Cisco cho ngân hàng MHB Bank

SVTH: : TRIỆU VĂN PHÚ Trang 5

Page 8: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

 

SVTH: : TRIỆU VĂN PHÚ Trang 6

Page 9: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

Phát chứng chỉ cho các học viên hoàn thành khóa học

 

SVTH: : TRIỆU VĂN PHÚ Trang 7

Page 10: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

TRUNG TÂM ĐÀO TẠO QUẢN TRỊ MẠNG & AN NINH MẠNG

QUỐC TẾ ATHENA

Cơ sở 1: 92 Nguyễn Đình Chiểu, phường Đa Kao, Q1. Điện thoại: (08)38244041 -

090 78 79 477-094 323 00 99(Gần ngã tư Đinh Tiên Hoàng - Nguyễn Đình Chiểu) 

Cơ sở 2: 2 Bis Đinh Tiên Hoàng, phường Đa Kao, Q1. Điện thoại: (08)22103801 -

094 320 00 88(Cạnh sân vận động Hoa Lư - Cách đài truyền hình Tp HTV 50 mét)

Website: http://athena.edu.vn - http://athena.com.vn

E-mail : [email protected]    -  [email protected]

SVTH: : TRIỆU VĂN PHÚ Trang 8

Page 11: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

CHƯƠNG 2 : TỔNG QUAN VỀ MYSQL VÀ PHP

2.1 TỔNG QUAN VỀ 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.1.1 Khởi động và sử dụng Chúng ta sử dụng command như sau: MySQL –hname –uuser –ppass Để truy cập vào

cơ sở dữ liệu.

Hoặc sử dụng bộ appserv để vào nhanh hơn theo đường dẫn sau:

26 Start/ Appserv/ MySQL command Line client Sau đó nhập password mà chúng ta

đã đặt vào.

2.1.2. Một số thuật ngữ 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.1.3. Loại dữ liệu trong MySQL

SVTH: : TRIỆU VĂN PHÚ Trang 9

Page 12: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

2.1.4. Những cú pháp cơ bản - Tạo một 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; Cú pháp thoát khỏi cơ sở dữ liệu: Exit Tạo một 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>)

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>

Thêm giá trị vào bảng:

INSERT INTO Tên_bảng(tên_cột) VALUES(Giá_trị_tương_ứng);

Truy xuất dữ liệu:

SELECT tên_cột FROM Tên_bảng;

Truy xuất dữ liệu với điều kiện:

SELECT tên_cột FROM Tên_bảng WHERE điều kiện;

Truy xuất dữ liệu và sắp xếp theo trình tự:

SELECT tên_cột FROM Tên_bảng WHERE điều kiện (có thể có where

hoặc không) ORDER BY Theo quy ước sắp xếp. Trong đó quy ước sắp

xếp bao gồm hai thông số là ASC (từ trên xuống dƣới), DESC (từ dưới

lên trên).

Truy cập dữ liệu có giới hạn:

SELECT tên_cột FROM Tên_bảng WHERE điều kiện (có thể có where

hoặc không) LIMIT vị trí bắt đầu, số record muốn lấy ra

Cập nhật dữ liệu trong bảng:

Update tên_bảng set tên_cột=Giá trị mới WHERE (điều kiện). Nếu

không có ràng buộc điều kiện, chúng sẽ cập nhật toàn bộ giá trị mới của

các record trong bảng.

Xóa dữ liệu trong bảng:

DELETE FROM tên_bảng WHERE (điều kiện). Nếu không có ràng

buộc điều kiện, chúng sẽ xó toàn bộ giá trị của các record trong bảng.

SVTH: : TRIỆU VĂN PHÚ Trang 10

Page 13: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

2.2 TỔNG QUAN VỀ PHP

2.2.1 Lịch sử phát triển

PHP

Được phát triển từ một sản phẩm có tên là PHP/FI. PHP/FI do Rasmus Lerdorf

tạo ra năm 1995, ban đầu được xem như là một tập con đơn giản của các mã kịch bản

Perl để theo dõi tình hình truy cập đến bản sơ yếu lý lịch của ông trên mạng. Ông đã

đặt tên cho bộ mã kịch bản này là 'Personal Home Page Tools'.

PHP 3

PHP 3.0 là phiên bản đầu tiên cho chúng ta thấy một hình ảnh gần gũi với các

phiên bản PHP mà chúng ta được biết ngày nay. Nó đã đƣợc Andi Gutmans và Zeev

Suraski tạo ra năm 1997 sau khi viết lại hoàn toàn bộ mã nguồn trước đó. PHP 3.0 đã

chính thức được công bố vào tháng 6 năm 1998, sau thời gian 9 tháng được cộng đồng

kiểm nghiệm.

PHP 4

Vào mùa đông năm 1998, ngay sau khi PHP 3.0 chính thức được công bố, Andi

Gutmans và Zeev Suraski đã bắt đầu bắt tay vào việc viết lại phần lõi của PHP. Một

động cơ mới, có tên 'Zend Engine' (ghép từ các chữ đầu trong tên của Zeev và Andi),

đã đáp ứng được các nhu cầu thiết kế này một cách thành công, và lần đầu tiên đƣợc

giới thiệu vào giữa năm 1999. PHP 4.0, dựa trên động cơ này, và đi kèm với hàng loạt

các tính năng mới bổ sung, đã chính thức đƣợc công bố vào tháng 5 năm 2000, gần 2

năm sau khi bản PHP 3.0 ra đời.

PHP 5

Sự thành công hết sức to lớn của PHP 4.0 đã không làm cho nhóm phát triển

PHP tự mãn. Cộng đồng PHP đã nhanh chóng giúp họ nhận ra những yếu kém của

PHP 4 đặc biệt với khả năng hỗ trợ lập trình hướng đối tượng (OOP), xử lý XML,

không hỗ trợ giao thức máy khách mới của MySQL 4.1 và 5.0, hỗ trợ dịch vụ web yếu.

Những điểm này chính là mục đích để Zeev và Andi viết Zend Engine 2.0, lõi của PHP

5.0. Một thảo luận trên Slashdot đã cho thấy việc phát triển PHP 5.0 có thể đã bắt đầu

vào thời điểm tháng 12 năm 2002 nhƣng những bài phỏng vấn Zeev liên quan đến

phiên bản này thì đã có mặt trên mạng Internet vào khoảng tháng 7 năm 2002.

SVTH: : TRIỆU VĂN PHÚ Trang 11

Page 14: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

Ngày 29 tháng 6 năm 2003, PHP 5 Beta 1 đã chính thức được công bố để cộng

đồng kiểm nghiệm. Đó cũng là phiên bản đầu tiên của Zend Engine 2.0. Phiên bản

Beta 2 sau đó đã ra mắt vào tháng 10 năm 2003 với sự xuất hiện của hai tính năng rất

được chờ đợi: Iterators, Reflection nhƣng namespaces một tính năng gây tranh cãi

khác đã bị loại khỏi mã nguồn. Ngày 21 tháng 12 năm 2003: PHP 5 Beta 3 đã đƣợc

công bố để kiểm tra với việc phân phối kèm với Tidy, bỏ hỗ trợ Windows 95, khả

năng gọi các hàm PHP bên trong XSLT, sửa chữa nhiều lỗi và thêm khá nhiều hàm

mới. PHP 5 bản chính thức đã ra mắt ngày 13 tháng 7 năm 2004 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. Mặc dù coi đây là phiên

bản sản xuất đầu tiên nhƣng PHP 5.0 vẫn còn một số lỗi trong đó đáng kể là lỗi xác

thực HTTP.

2.2.2 Cấu trúc cơ bản 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.

Ví dụ: <?php echo ”Hello world!”; ?>

SVTH: : TRIỆU VĂN PHÚ Trang 12

Page 15: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

2.2.3. 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 :

+ 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 "."

2.2.4. Biến, hằng, chuỗi và các kiểu dữ liệu Biến

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.

Hằng

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

SVTH: : TRIỆU VĂN PHÚ Trang 13

Page 16: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

Chuỗi

Chuỗi là một nhóm các kỹ tự, số, khoảng trắng, dấu ngắt được đặt trong các dấu

nháy.

Ví dụ:

"Hello‟

"welcome to VietNam"

Để tạo 1 biễn chuỗi, chúng ta phải gán giá trị chuỗi cho 1 biến hợp lệ.

Ví dụ:

$fisrt_name= "Nguyen";

$last_name= ‘Van A’;

Để liên kết 1 chuỗi và 1 biến chúng ta thường sử dụng dấu "."

Kiểu dữ liệu

Các kiểu dữ liệu khác nhau chiếm các lượng bộ nhớ khác nhau và có thể được xử lý

theo cách khác nhau khi chúng được theo tác trong 1 script. Trong PHP chúng ta có 6

kiểu dữ liệu chính như sau :

Chúng ta có thể sử dụng hàm dựng sẵn GETtype() của PHP4 để kiểm tra kiểu của bất

kỳ biến.

2.2.5. Các phương thức được sử dụng trong lập trình PHP Có 2 phương thức được sử dụng trong lập trình PHP là GET và POST

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ừ webserver.

Ví dụ:

Với url sau: shownews.php?id=50

Vậy với trang shownews ta dùng hàm $_GET[„id‟] sẽ được giá trị là 50.

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.

SVTH: : TRIỆU VĂN PHÚ Trang 14

Page 17: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

2.2.6. Cookie và Session trong PHP Cookie và Session là hai phương pháp sử dụng để quản lý các phiên làm việc giữa

người sử dụng và hệ thống.

Cookie

Cookie là 1 đoạn dữ liệu được ghi vào đĩa cứng hoặc bộ nhớ của máy người sử dụng.

Nó được trình duyệt gởi ngược lên lại server mỗi khi browser tải 1 trang web từ

server.

Những thông tin đƣợc lưu trữ trong Cookie hoàn toàn phụ thuộc vào website trên

server. Mỗi website có thể lưu trữ những thông tin khác nhau trong Cookie, ví dụ thời

điểm lần cuối ta ghé thăm website, đánh dấu ta đã login hay chƣa, v.v...

Cookie được tạo ra bởi website và gởi tới browser, do vậy 2 website khác nhau (cho

dù cùng host trên 1 server) sẽ có 2 Cookie khác nhau gởi tới browser. Ngoài ra, mỗi

browser quản lý và lưu trữ Cookie theo cách riêng của mình, cho nên 2 browser cùng

truy cập vào 1 website sẽ nhận được 2 Cookie khác nhau.

1. Để thiết lập Cookie ta sử dụng cú pháp:

SetCookie("tên Cookie","giá trị", thời gian sống)

Tên Cookie là tên mà chúng ta đặt cho phiên làm việc.

Giá trị là thông số của tên Cookie.

Ví dụ: setCookie("name","admin",time()+3600);

2. Để sử dụng lại Cookie vừa thiết lập, chúng ta sử dụng cú pháp:

Cú pháp: $_COOKIE["tên Cookies"]

Tên Cookie là tên mà chúng ta thiết lập phía trên.

3. Để hủy 1 Cookie đã được tạo ta có thể dùng 1 trong 2 cách sau:

+ Cú pháp: setCookie("Tên Cookie")

Gọi hàm setCookie với chỉ duy nhất tên Cookie mà thôi

+ Dùng thời gian hết hạn Cookie là thời điểm trong quá khứ.

Ví dụ: setCookie("name","admin",time()-3600);

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ử

SVTH: : TRIỆU VĂN PHÚ Trang 15

Page 18: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

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.

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

4. Giống với Cookie. Để 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.

5. Để 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.7. Hàm Để giảm thời gian lặp lại 1 thao tác code nhiều lần, PHP hỗ trợ người lập trình việc tự

định nghĩa cho mình những hàm có khả năng lặp lại nhiều lần trong website. Việc này

cũng giúp cho người lập trình kiểm soát mã nguồn một cách mạch lạc. Đồng thời có

thể tùy biến ở mọi trang. Mà không cần phải khởi tạo hay viết lại mã lệnh như HTML

thuần.

Hàm tự định nghĩa

Cú pháp:

function function_name()

{

//Lệnh thực thi

}

Tên hàm có thể là một tổ hợp bất kỳ những chứ cái, con số và dấu gạch

dưới, nhưng phải bắt đầu từ chứ cái và dấu gạch dưới.

Hàm tự định nghĩa với các tham số

Cú pháp:

SVTH: : TRIỆU VĂN PHÚ Trang 16

Page 19: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

function function_name($gt1,$gt2)

{

//Lệnh thực thi

}

Hàm tự định nghĩa với giá trị trả về

Cú pháp:

function function_name(Có hoặc không có đối số)

{

// Lệnh thực thi return giatri;

}

Gọi lại hàm

PHP cung cấp nhiều hàm cho phép triệu gọi lại file. Như hàm include("URL

đến file"), require("URL Đến file").

Ngoài hai cú pháp trên còn có include_once(), require_once(). Hai hàm này

cũng có trách nhiệm gọi lại hàm. Những chúng sẽ chỉ gọi lại duy nhất 1 lần mà thôi.

2.3. KẾT HỢP PHP VÀ MYSQL TRONG ỨNG DỤNG WEBSITEKết nối cơ sở dữ liệu

MySQL_connect("hostname","user","pass");

Lựa chọn cơ sở dữ liệu

MySQL_select_db("tên_CSDL");

Thực thi câu lệnh truy vấn

MySQL_query("Câu truy vấn ở đây");

Đếm số dòng dữ liệu trong bảng

MySQL_num_rows();

Lấy dữ liệu từ bảng đưa vào mảng

MySQL_fetch_array();

Đóng kết nối cơ sở dữ liệu

MySQL_close();

SVTH: : TRIỆU VĂN PHÚ Trang 17

Page 20: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

CHƯƠNG 3 : GIỚI THIỆU, CÀI ĐẶT VÀ VIỆT HÓA OPENCART

3.1. KIẾN TRÚC CỦA OPENCARTOpencart là một giải pháp thương mại điện tử dựa trên kiến trúc MVC(Model View

Controller).MVC có nghĩa là mô hình(Model), xem(View),điều khiển(Controller).

Các mô hình MVC (Model View Controller) là sự tách biệt của một ứng dụng

giao diện người dùng đồ họa (GUI) từ cốt lõi logic của nó. Không có thiết kế tuyệt đối

cho MVC, nhưng như với bất kỳ mẫu thiết kế nào, nên thích ứng với tình huống đang

phải đối mặt khi phát triển.

MVC là một mẫu kiến trúc phần mềm trong kỹ nghệ phần mềm. Khi sử đúng

cách, mẫu MVC giúp cho nhà phát triển phần mềm tách biệt các pha phát triển phần

mềm riêng rẽ với các nguyên tắc nghiệp vụ và giao diện người dùng. Phần mềm phát

triển theo mẫu MVC tạo nhiều thuận lợi cho việc bảo trì vì các nguyên tắc nghề

nghiệp và giao diện ít liên quan với nhau.

Hình 2. 1: Kiến trúc mô hình MVC

Khi người dùng cần tương tác hoặc thay đổi trạng thái của đối tượng đồ họa

thì sẽ tương tác thông qua Controller của đối tượng đồ họa. Controller sẽ thực hiện

việc thay đổi trên Model. Khi có thay đổi ở Model, sẽ có một thông điệp đƣợc phát

thông báo cho View và Controller biết. Nhận được thông điệp từ Model, View sẽ cập

nhật lại thể hiện của mình, đảm bảo luôn thể hiện trực quan chính xác của Model. Còn

Controller khi nhận được thông điệp tử Model, sẽ có những tương tác phản hồi lại

người sử dụng.

SVTH: : TRIỆU VĂN PHÚ Trang 18

Page 21: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

Hình 2. 2: Mô hình tuần tự của MVC

Ưu điểm:

Ưu điểm mạnh nhất của MVC là nó giúp cho ứng dụng dễ bảo trì, module hóa các

chức năng, và được xây dựng nhanh chóng. MVC tách các tác vụ của ứng dụng thành

các phần riêng rẽ Model, View, Controller giúp cho việc xây dựng ứng dụng nhanh

hơn. Dễ thêm các tính năng mới, dễ thay đổi các tính năng cũ. Có được ưu điểm đó vì

MVC tách biệt sự phụ thuộc giữa các thành phần trong một đối tượng đồ họa, làm

tăng tình linh động. Lúc đó có thể dễ dang thay đổi giao diện bằng cách thay đổi thành

phần View trong khi cách thức lưu trữ(Model) cũng như xử lý(Controller) không hề

thay đổi. Tương tự có thể thay đổi Model và Controller mà những thành phần còn lại

vẫn giữ nguyên.

Nhược điểm:

Đối với dự án nhỏ thì việc áp dụng mô hình MVC gây cồng kềnh, tốn thời gian trong

quá trình phát triển, tốn thời gian chuyển dữ liệu giữa các tầng.

So sánh MVC và Three Layer:

Một mô hình không thể không nhắc đến khi nhắc đến MVC đó là mô hình Three

Layer. Khá phổ biến và có nhiều điểm tương đồng với MVC.

SVTH: : TRIỆU VĂN PHÚ Trang 19

Page 22: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

Hình 2. 3: Mô hình Three Layer

Presentation Layer: Lớp này làm nhiệm vụ giao tiếp với người dùng để thu

thập dữ liệu và hiển thị kết quả.

Business Logic Layer: Lớp này xử lý chính các dữ liệu trước khi chuyển xuống

Data Access Layer. Đây là nới kiểm tra các yêu cầu nghiệp vụ, tính toán, xử lý

các yêu cầu và lựa chọn kết quả trả về cho Presentation Layer.

Data Access Layer: Lớp này thực hiện các nghiệp vụ liên quan đến lưu trữ và

truy xuất dữ liệu của ứng dụng.

Có những điểm tương đồng với MVC nhƣ đều có 3 lớp nhưng vẫn có những

điểm khác nhau cơ bản giữa hai mô hình này.

Sự khác biệt rõ nhất là cách xử lý yêu cầu của Three Layer khác so với MVC:

- Ở Three Layer yêu cầu được nhận từ Presentation Layer rồi chuyển qua

Business Logic Layer để xử lý và được lưu trữ ở Data Access Layer.

- Còn MVC khi yêu cầu đƣợc gửi từ Controller, Controller sẽ thực hiện việc

thay đổi trên Model. Lúc đó Model sẽ có thông điệp đồng thời cho View và Controller

biết.

- Ở MVC thành phần Model giữ chức năng giống như của cả lớp Business và

Data Access của Three Layer.

- Three Layer đƣợc sử dụng trong lập trình ứng dụng, còn MVC được sử dụng nhiều

trong lập trình Website.

SVTH: : TRIỆU VĂN PHÚ Trang 20

Page 23: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

Hình 2. 4: So sánh MVC với Three Layer

3.1.1. Tầng mô hình (Business process layer) Mô hình hóa dữ liệu và hành vi trong xử lý nghiệp vụ. Chịu trách nhiệm:

- Thực hiện các truy vấn trong cơ sở dữ liệu.

- Tính toán trong các tiến trình xử lý nghiệp vụ.

- Đóng gói dữ liệu và hành vi, độc lập với tầng biểu diễn (presentation layer).

3.1.2. Tầng biểu diễn (Presentation layer) - Hiển thị thông tin tùy thuộc vào loại client.

- Biểu diễn kết quả của tầng business logic (Model).

- Không cần quan tâm làm thế nào có được thông tin, hoặc thông tin ở đâu

(Model chịu trách nhiệm).

3.1.3. Tầng điều khiển (Control layer) - Kết nối tương tác của người dùng với các nghiệp vụ cung cấp phía sau.

- Chọn ra cách biểu diễn phù hợp: ngôn ngữ, biến đổi định dạng thông tin theo

vùng, quyền hạn người dùng.

- Một request tới ứng dụng sẽ chuyển cho tầng Control: Tầng này quyết định

request được xử lý như thế nào, và thông tin sẽ được trả lại như thế nào.

SVTH: : TRIỆU VĂN PHÚ Trang 21

Page 24: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

3.2 : Cài đặt Xampp và Opencart

Bước 1: Cài đặt máy chủ Web Server XAMPPVào trang www.oldapps.com để download bản XAMPP 1.7.3.

Cài đặt Xampp

Ấn Install.=>Chờ quá trình cài đặt hoàn thành

SVTH: : TRIỆU VĂN PHÚ Trang 22

Page 25: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

Xuất hiện cửa sổ trên, chọn y.

Chọn y.

Ấn enter.

SVTH: : TRIỆU VĂN PHÚ Trang 23

Page 26: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

Ấn enter.

Chọn x để thoát khỏi giao diện dòng lệnh.

SVTH: : TRIỆU VĂN PHÚ Trang 24

Page 27: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

Mở biểu tượng XAMMPP Control Panel, start 2 dịch vụ Apache vàMySql. (Lưu ý: Apache và MySql phải luôn ở trạng thái ‘running’ thì trang web mới chạy được)Bật trình duyệt firefox, gõ vào đường dẫn http://localhost/ để kiểm tra kết quả.

Bước 2: Tạo Database cho Web site local

SVTH: : TRIỆU VĂN PHÚ Trang 25

Page 28: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

Mở giao diện XAMPP, bấm vào Admin tại dòng "MySQL", bấm tiếp vào thẻ "Database"

Đặt tên cho Database ở vị trí "1", bấm nút tạo Database "2". Sau đó đóng cửa sổ web này!

Bước 3: Copy (upload) Source Opencart

Copy Source Opencart vào đường dẫn "C:\xampp\htdocs", tiến hành đổi tên thư mục

Bước 4: Truy cập trang cài đặt Opencart

- Mở trình duyệt Web (chrome, IE, Firefox) gỏ vào ô địa chỉ đường dẫn sau: "localhost/nguyenkim"

SVTH: : TRIỆU VĂN PHÚ Trang 26

Page 29: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

Lựa chọn ngôn ngữ làViệt Nam!

Nhấn vào "Tôi đồng ý cấp giấy phép". Nhấn "tiếp tục".

SVTH: : TRIỆU VĂN PHÚ Trang 27

Page 30: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

Cuộn trang xuống và nhấn "tiếp tục"

Điền thông tin cho phù hợp:Máy chủ cơ sở dữ liệu: localhostTài khoản MySQL: rootMật khẩu: để trống

SVTH: : TRIỆU VĂN PHÚ Trang 28

Page 31: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

Tên CSDL MySQL: Là tên mà bạn đã trong Database ở bước 2Tên tài khoản: adminMật khẩu: bạn tự đặtĐịa chỉ Email: Email thực của bạn----------------------------------------------Nhấn "Tiếp tục" sau khi điền xong thông tin.

Hoàn thành quá trình cài đặtỞ bước này trước khi truy cập vào các giao diện, bạn phải tiến hành xóa thư mục cài đặt trong đường dẫn xampp.

SVTH: : TRIỆU VĂN PHÚ Trang 29

Page 32: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

Vào thư mục "C:\xampp\htdocs\Shop" Xóa thư mục "install"Sau khi đã xóa thư mục "Install", quay lại trình duyệt và truy cập trang.

Đây là trang quản trị, đường dẫn: "localhost/shop/nguyenkim"

SVTH: : TRIỆU VĂN PHÚ Trang 30

Page 33: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

Đây là trang chủ, đường dẫn: "localhost/shop"

Bước 5: Chỉnh sửa thông tin của Shop OpencartTruy cập bảng quản trị: "localhost/shop/admin"Điền thông tin username/password

Đây là bảng quản trị

SVTH: : TRIỆU VĂN PHÚ Trang 31

Page 34: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

Bấm vào Menu "Hệ thống" -> "Cấu hình". Bấm vào nút "sửa" ở "2"

Thay đổi thông tin tổng quan:Tên cửa hàng: Bạn tự chọnChủ cửa hàng: Tên bạnĐịa chỉ: Là địa chỉ Cty, Shop…Email: Email bạn đang dùngĐiện thoại: Số điện thoại liên lạc

SVTH: : TRIỆU VĂN PHÚ Trang 32

Page 35: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

Ở mục Cửa hàng:Tiêu đề: Tên shop của bạnMô tả từ khóa Meta: Tùy bạnGiao diện: defaultBốcục: Mặcđịnh

Chuyển qua thẻ Khuvực:Quốc gia: Việt NamTỉnh/ Thành: HồChí Minh

SVTH: : TRIỆU VĂN PHÚ Trang 33

Page 36: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

Chuyển qua thẻ "Thư"Giao thức gửi thư: SMTPTham số thư: đểtrốngMáy chủ SMTP: ssl:smtp.gmail.comTài khoản SMTP: Gmail củabạnMậtkhẩu SMTP: MậtkhẩucủahộpthưCổng SMTP: 445Thời gian chờ: 10

Chuyển qua "Nút thanh toán"Opencart hổ trợ thanh toán qua trung gian là Ngân Lượng và Bảo Kim. Bạn phải đăng ký dịch vụ thanh toán trên trang chủ của NgânLượng (nganluong.vn) vàBảo Kim

SVTH: : TRIỆU VĂN PHÚ Trang 34

Page 37: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

(baokim.vn) để lấy các thông tin: Mã merchant, mật khẩu giao tiếp, tài khoản nhận tiền!--------------Chuyển sang Thẻ "Hình"

SVTH: : TRIỆU VĂN PHÚ Trang 35

Page 38: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

Logo cửa hàng: Dùng để thay đổi Logo theo ý muốn

Bước 6: Tùy chỉnh Danh mục sản phẩm, sản phẩm.

Truy cập vào Menu "Sản phẩm", "Danh mục". Bạn có thể thêm, xóa, hoặc chỉnh sửa danh mục.

SVTH: : TRIỆU VĂN PHÚ Trang 36

Page 39: bao cao thuc tap hang tuan

Xây dựng website bán hàng trực tuyến bằng open cart

Bấm vào Menu "Sản phẩm", "Sản phẩm". Bạn có thể thêm, xóa, Sao chép, hoặc chỉnh sửa thông tin của các sản phẩm.

SVTH: : TRIỆU VĂN PHÚ Trang 37