Tải bản đầy đủ (.doc) (56 trang)

Xây dựng website dựa trên nền tảng mã nguồn Joomla

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

GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
MỤC LỤC
LỜI MỞ ĐẦU 1
* Bước 1: Download thành phần mở rộng 36
* Bước 2: Cài đặt phần mở rộng 36
+ Cài đặt thông qua một danh sách các file : 37
SV : Ngô Văn Bính Lớp CNTT K11
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
DANH MỤC HÌNH VẼ
* Bước 1: Download thành phần mở rộng 36
* Bước 2: Cài đặt phần mở rộng 36
Lưu ý: 37
+ Cài đặt thông qua một danh sách các file : 37
SV : Ngô Văn Bính Lớp CNTT K11
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
LỜI MỞ ĐẦU

Với trình độ khoa học và công nghệ phát triển mạnh mẽ trong những năm
gần đây, Internet đã trở nên thân quen và dần trở thành một công cụ không thể thiếu
trong cuộc sống thường ngày. Hiện nay, số người dùng Internet ở Việt Nam đã
chiếm 25~30% dân số cả nước và con số này còn tiếp tục tăng cao trong một vài
năm tới. Theo số liệu thống kê thì cứ 1000 người đọc báo in trước đây thì ngày nay
chỉ còn 20 người, người ta thích lướt qua internet vào mỗi buổi sáng hay sau giờ
làm việc nhất là khi cần tìm kiếm một thông tin nào đó. Chính bởi vậy, website đã
trở thành một cửa ngõ để chúng ta kết nối với nhau và với bạn bè khắp nơi trên toàn
thế giới trong mọi lĩnh vực. Và một website để giới thiệu các sản phẩm, dịch vụ là
rất cần thiết cho một Công ty hay doanh nghiệp hoạt động kinh doanh hiện nay.
Như chúng ta đã biết để Công ty hay doanh nghiệp được nhiều khách hàng
biết đến và sử dụng dịch vụ hay mua bán sản phầm thì việc giới thiệu hình ảnh
Công ty trên internet thông qua một website riêng. Với từng ngành cụ thể thì cần có
một trang web phù hợp với ngành đó nói chung và ngành nội thất nói riêng như tư


vấn thiết kế trang trí nội thất, cầu thang, các sản phẩm về inox,…
KHANG DŨNG là một doanh nghiệp nhỏ chuyên tư vấn, sản xuất và lắp đặt
cầu thang bộ dành cho khách sạn, siêu thị, trung tâm thương mại, nhà biệt thự, nhà
phố, gia đình,…Với đội ngũ họa sỹ thiết kế chuyên nghiệp giàu sức sáng tạo, đội
ngũ nhân viên kinh doanh trẻ, nhiệt huyết, đội ngũ kĩ sư kĩ thuật và công nhân sản
xuất có tay nghề cao về inox, sắt, đồ gỗ, mang lại cho khách hàng những sản phẩm
hoàn hảo, chất lượng cao.
Từ khi ra đời đến nay, doanh nghiệp luôn được đông đảo khách hàng tin
tưởng đã và đang từng bước xây dựng KHANG DŨNG thành một thương hiệu
mạnh, chuyên nghiệp trong lĩnh vực thiết kế và sản xuất các loại cầu thang bộ và
các sản phẩm inox. KHANG DŨNG luôn coi trọng và tỉ mỉ từ khâu thiết kế đến
khâu lựa chọn nguyên vật liệu, không coi nhẹ bất cứ khâu nào trong quá trình sản
xuất để đảm bảo chất lượng xuất xưởng của mỗi sản phẩm.
SV : Ngô Văn Bính Lớp CNTT K11
1
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
KHANG DŨNG luôn đổi mới sáng tạo cả về hình dáng, mẫu mã và kết cấu
của các sản phẩm với phong cách độc đáo, sang trọng và lộng lẫy để khách hàng
luôn hài lòng với những sản phẩm của chúng tôi. KHANG DŨNG luôn hợp tác với
khách hàng bằng uy tín, chất lượng và danh dự.
Nhiều năm qua chúng tôi luôn nỗ lực cố gắng và quyết tâm theo đuổi các
mục tiêu cao hơn trong sản xuất kinh doanh, không ngừng hoàn thiện chất lượng
sản phẩm để khách hàng cảm thấy hài lòng nhất với những sản phẩm của chúng tôi
và đó cũng chính là mục tiêu mà KHANG DŨNG hướng tới. Với phong cách thiết
kế sang trọng mà gần gũi cùng với kiểu dáng độc đáo và bắt mắt tất cả đã tạo nên
những sản phẩm sang trọng, thân thiện và hoàn mỹ của KHANG DŨNG.
Nhận thức được sự cần thiết phải có một website về cầu thang bộ, em đã lựa
chọn báo cáo thực tập tốt nghiệp của mình là “Xây dựng website dựa trên nền tảng
mã nguồn Joomla” với mục đích cung cấp những thông tin đầy đủ nhất về nét
doanh nghiệp và các sản phẩm cầu thang bộ cho khách hàng lựa chọn.

Ngoài lời mở đầu thì kết cấu của bài báo cáo thực tập tốt nghiệp của em
được chia làm 3 chương:
CHƯƠNG 1: NGÔN NGỮ XÂY DỰNG WEBSITE
CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ HỆ THỐNG
CHƯƠNG 3: CÔNG CỤ CÀI ĐẶT VÀ TRIỂN KHAI

SV : Ngô Văn Bính Lớp CNTT K11
2
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
CHƯƠNG 1: TỔNG QUAN VỀ NGÔN NGỮ XÂY DỰNG
……….WEBSITE (MÃ NGUỒN JOOMLA)
1.1 Giới thiệu chung về Joomla
1.1.1 Lịch sử phát triển và khái niệm về Joomla
Joomla! hệ quản trị nội dung mã nguồn mở. Joomla! được viết bằng ngôn
ngữ PHP và kết nối tới cơ sở dữ liệu MySQL, cho phép xuất bản các nội dung lên
Internet.
Joomla! có các đặc tính cơ bản là: bộ đệm trang (page caching) để tăng tốc
độ hiển thị, lập chỉ mục, đọc tin RSS (RSS feeds), trang dùng để in, bản tin nhanh,
blog, diễn đàn, bình chọn, lịch biểu, tìm kiếm trong site và hỗ trợ đa ngôn ngữ.
Joomla! được phát âm theo tiếng Swahili như là jumla nghĩa là "đồng tâm
hiệp lực".
Joomla! được sử dụng ở khắp mọi nơi trên thế giới, từ những website cá
nhân cho tới những hệ thống website doanh nghiệp có tính phức tạp cao, cung cấp
nhiều dịch vụ và ứng dụng. Joomla! có thể dễ dàng cài đặt, dễ dàng quản lý và có
độ tin cậy cao.
Joomla! có mã nguồn mở do đó việc sử dụng Joomla! là hoàn toàn miễn phí cho
tất cả mọi người trên thế giới.
Joomla là "sản phẩm anh em" với Mambo của tập đoàn Miro Software
Solutions - Úc (hãng đang nắm giữ Mambo) với những người phát triển nòng cốt.
Ban đầu Công ty Miro đã phát triển Mambo theo dạng ứng dụng mã nguồn đóng.

Đến tháng 4 năm 2001, công ty đã thông qua một chính sách bản quyền kép, nghĩa
là phát hành Mambo theo cả giấy phép GPL.
Đến ngày 17 tháng 8 năm 2005, do sự tranh chấp về mặt pháp lý cũng như mong
muốn vào sự phát triển của Mambo dựa trên quỹ tài trợ và sự hỗ trợ của cộng
đồng nên toàn bộ đội phát triển nòng cốt của Mambo đã rời khỏi dự án trong khi
đang làm việc với phiên bản 4.5.3. Nhờ sự trợ giúp của Trung tâm Luật Tự do Phần
mềm (Software Freedom Law Center - SFLC), 20 thành viên nòng cốt cũ của
SV : Ngô Văn Bính Lớp CNTT K11
3
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
Mambo đã thành lập một tổ chức phi lợi nhuận khác lấy tên là Open Source
Matters, để hỗ trợ về mặt tổ chức, pháp lý và kinh phí cho dự án mã nguồn mở còn
chưa được đặt tên của họ. Ngay ngày hôm sau, 1000 người đã gia nhập diễn đàn
OpenSourceMatters, hầu hết các bài viết cho diễn đàn đều khuyến khích và đồng
tình với hành động của Nhóm Phát triển. Tin trên đã nhanh chóng được đăng tải
trên các tạp chí newsforge.com, eweek.com và ZDnet.com. Trong một thông báo
của Eddie (người đứng đầu dự án) 2 tuần sau đó, các nhóm đã được tổ chức lại và
cộng đồng Joomla tiếp tục tăng trưởng. Tới ngày 1 tháng 9 năm 2005 tên mới của
dự án đã được thông báo cho khoảng 3000 người theo dõi đội Phát triển và đến
ngày 16 tháng 9 thì họ cho ra đời Joomla 1.0.
Joomla! là một hệ quản trị nội dung mã nguồn mở (Content Management System –
CMS). Joomla! được viết bằng ngôn ngữ PHP và kết nối tới cơ sở dữ liệu MySQL,
cho phép người sử dụng có thể dễ dàng xuất bản các nội dung của họ lên Internet
hoặc Intranet.
Joomla có các đặc tính cơ bản là: bộ đệm trang (page caching) để tăng tốc độ
hiển thị, lập chỉ mục, đọc tin RSS (RSS feeds), trang dùng để in, bản tin nhanh,
blog, diễn đàn, bình chọn, lịch biểu, tìm kiếm trong site và hỗ trợ đa ngôn ngữ.
Joomla được phát âm theo tiếng Swahili như là jumla nghĩa là "đồng tâm hiệp lực".
Joomla được sử dụng ở khắp mọi nơi trên thế giới, từ những website cá nhân cho
tới những hệ thống website doanh nghiệp có tính phức tạp cao, cung cấp nhiều dịch

vụ và ứng dụng. Joomla có thể dễ dàng cài đặt, dễ dàng quản lý và có độ tin cậy
cao. Joomla là sản phẩm mã nguồn mở do đó việc sử dụng Joomla là hoàn toàn
miễn phí cho tất cả mọi người trên thế giới.
1.1.2 Ứng dụng của Joomla
Joomla đã được sử dụng trên khắp thế giới, đã được ứng dụng vào xây
dựng các website từ đơn giản như website cá nhân tới các ứng dụng website phức
tạp. Sau đây là 1 số ứng dụng có thể được xây dựng bằng Joomla :
− Trang web của các tổ chức hoặc các cổng thông tin ( Portal ).
− Thương mại điện tử.
SV : Ngô Văn Bính Lớp CNTT K11
4
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
− Trang web cho các công ty cỡ nhỏ.
− Ứng dụng cho các cơ quan hành chính.
− Trang web cho các trường học và trung tâm đào tạo.
− Trang web cá nhân và gia đình.
− Các cổng thông tin cộng đồng.
− Trang web báo điện tử và tạp chí và nhiều ứng dụng khác nữa
1.2 Các khái niệm cơ bản trong Joomla
Joomla là một hệ quản trị rất phổ biến trong việc thiết kế website và cũng
không khó để sử dụng. Tuy nhiên để khai thác triệt để các tiện ích mà Joomla mang
lại thì trước hết chúng ta phải nắm rõ các khái niệm sau :
1.2.1 Front-end và back-end
* Front-end: Front-end (tiền sảnh), còn được biết với tên gọi Public Front-
end: phần giao diện phía ngoài, nơi tiếp xúc với mọi người sử dụng. Bất cứ ai cũng
có thể trông thấy khi gõ đúng đường dẫn URL vào trình duyệt.
Front-end chứa 1 trang đặc biệt là FrontPage (homepage) - trang chủ.
* Back-end: Back-end, còn được biết với tên gọi Public Back-end,
Administrator, Control Pane: phần dành cho người quản trị. Những người bình
thường không biết đường dẫn để truy cập, hoặc nếu có biết thì cũng phải qua bước

kiểm tra tài khoản.
Phần back-end được truy cập thông qua đường dẫn:
http://your_domain/administrator
1.2.2 Các thành phần mở rộng
* Module :
Module là một trong 3 thành phần mở rộng chính của Joomla! Đó là một
đoạn mã nhỏ thường được dùng để truy vấn các thông tin từ cơ sở dữ liệu và hiển
thị các kết quả tìm được. Nó có thể được nạp vào một vị trí bất kỳ trên template (vị
trí left, right, top, bottom hoặc vị trí do người dùng định nghĩa); có thể hiện trên
tất cả các trang của Website hay một số trang được ấn định. Khả năng tương tác
SV : Ngô Văn Bính Lớp CNTT K11
5
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
giữa người sử dụng và hệ thống thông qua module là hạn chế (chúng ta thường chỉ
nhận thông tin trả về).
Modules thường được dùng để hiển thị những thông tin khác nhau hoặc
những tính năng tương tác trong toàn bộ site Joomla của bạn. Một Module có thể
chứa hầu như bất kì thứ gì từ những văn bản đơn giản, đến HTML, đến những ứng
dụng hoàn toàn độc lập của các hãng thứ ba. Những Module cũng có thể hiển thị
nội dung tương tác, như các poll (thăm dò ý kiến), những tagboard, tin mới nhất, tin
khẩn và nhiều nữa.
Các Site Module khác với các Administrator Module bởi vì chúng hiển thị
những nội dung trong Front-end của site trong khi nhưng Admin Module liên quan
đến các tác vụ và/hoặc những tính năng khác nhau của Administrative (hoặc Back-
end). Các Module có thể được tạo bởi bạn (costom/user module) hay được tải về và
cài đặt.
Quản lý các module luôn luôn nằm trong Administrator (Admin Seciton).
Vào Extension\ Module Manager trên thanh Menu. Ở đó bạn có thể cài đặt / tháo bỏ
một module và chỉnh sửa những cấu hình phổ biến như là: tên, những trang nó xuất
hiện,vùng đặt nó, và cấp độ truy cập. Từ danh sách chọn module bạn muốn cấu

hình.
Module Manager là bộ đầu tiên thiết đặt hiển thị số lượng chính xác module.
Tận cuối danh sách bạn có thể thấy một chức năng tổ chức trang, nơi cho phép bạn
điều hướng đến bộ cài đặt kế tiếp của các module trong danh sách. Bạn cũng có thể
cài đặt số module được hiển thị trên một trang bằng cách chọn số trên hộp chọn đổ
xuống trên góc trên phải màn hình. Ở đây bạn có thể tìm thấy một danh sách của tất
cả bộ thiết lập mặc đinh site module khi cài đặt Joomla. Mỗi cái quy chiếu đến một
loại module cụ thể được định từ trước. Dưới những tiêu đề danh sách cụ thể được
hiển thị những trạng thái của nhưng Module được cài đặt trên hệ thống.
Những Module được xác định bằng một kiểu (ví dụ mod_mainmenu). Nhiều
thể hiện của cùng một module có thể được tạo ra bằng cách chép một loại module
cụ thể, cho nó một tiêu đề khác và các thông số khác theo nhu cầu của bạn. Bạn có
SV : Ngô Văn Bính Lớp CNTT K11
6
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
thể tạo một module tùy thích với một loại “User” bằng cách click vào biểu tượng
“New”. Đây là một module rất hữu dụng mà bạn thường tạo một Content (content
này không liên quan gì đến các Section, Category hay Static Content Item) hay RSS
feed. Nó cũng được dùng như một hộp văn bản hay môt module ảnh hay thậm chí
bao gồm code tùy biến.
Những Site Module sau được gói cùng với Joomla: Những tiêu đề cho mỗi
module là tiêu đề mặc định trong phiên bản Joomla. Những tiêu đề này có thể được
đổi tên hoặc dịch cho hợp với nhu cầu của bạn.
+ Archive – kho lưu
+ Latest News – tin mới
+ Login Form – biểu mẫu login
+ Main Menu – menu chính
+ Popular – ưa chuộng
+ Newsflash – tin khẩn
+ Who's Online – ai trong mạng

+ Polls – thăm dò ý kiến
+ Random Image – hình ảnh ngẫu nhiên
+ Related Items – mục liên quan
+ Syndicate – đăng tin
+ Sections – phân loại
+ Statistics – thống kê
+ User (Custom & RSS Feeds)
+ Template Chooser – chọn template
+ Wrapper – trình bao bọc
* Component :
Các Component là những thành phần nội dung đặc biệt hay những ứng dụng.
Joomla bao gồm một số nhân component và hỗ trợ khả năng tự tăng cường tính
năng với component của các hãng thứ ba. Những component được gắn sẵn, cả bao
SV : Ngô Văn Bính Lớp CNTT K11
7
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
gồm trong Joomla, là một phần của tính năng nhân. Bạn sẽ tìm thấy những
component của hãng thứ ba tại Joomla Forge cũng như tại rất nhiều nhà phát triển
thứ ba và những site cộng đồng. Cấu hình và trợ giúp thêm thường được cung cấp
với kèm với chính component. Những component là mô phỏng tự nhiên, điều này
làm nó có khả năng tăng cường các chức năng của Joomla trong bất kì hoàn cảnh
nào. Một component đặc trưng giống như Menu item. Những visitor hay những user
có thể thấy nội dung của component bằng cách click vào liên kết của Menu item
này. Nó thường được hiển thị trong vùng nội dung chính của site.
Những component được bao gồm với Joomla là:
+ Banners – ô quảng cáo
+ Contacts – Liên hệ
+ Newsfeeds – điểm tin
+ Polls – thăm dò
+ Web Links – liên kết web

* Mambots :
Mambots là những đơn vị mã chức năng hỗ trợ những hoạt động của Joomla.
Chúng có nhiều mục đích và những chức năng khác nhau và được nhóm lại để quản
lý dễ dàng hơn. Ví dụ, có nhiều Mambot chỉ hoạt động trong những content item,
những cái khác được cung cấp tính năng tìm kiếm v.v. Trong một vài nhóm, một số
Mambot có thể được publish một lần, trong khi những cái khác (ví dụ như
WYSIWYG editor – trình soạn thảo trực quan) chỉ một cái được kích hoạt.
* Menu:
Joomla có rất nhiều kiểu Menu, mỗi Menu sẽ là một trang hiển thị có nội
dung và cách trình bày theo nhiều kiểu khác nhau.
Các Menu này được quản lý theo mã số ID nên có thể thay đổi tên và vị trí
mà ảnh hưởng đến nội dung, địa chỉ liên kết của chúng.
Joomla cho phép lựa chọn và quyết định Menu nào làm Trang chủ (Home) là
trang sẽ xuất hiện đầu tiên khi truy cập vào địa chỉ của trang Web.
SV : Ngô Văn Bính Lớp CNTT K11
8
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
Tất cả các thành phần, nội dung trong Joomla đều có thể cho phép hiển thị
hay không hiển thị (sử dụng hay không sử dụng) thông qua chức năng Publish hay
Unpublish.
Tất cả các thành phần mở rộng đều được cài đặt thêm hoặc gỡ bỏ thông qua
các Menu lệnh trong Joomla.
* Template:
Template là một loạt các file trong Joomla CMS mà được sử dụng để điều
khiển cách thức hiển thị nội dung. Template không phải là một website, nó không
được coi là một thiết kế trang web đầy đủ.
Template là một thiết kế nền tảng cơ bản cho việc hiển thị web site. Để tạo
ra hiệu ứng của một trang web hoàn chỉnh Template làm việc cùng với nội dung
được cất giữ trong cơ sở dữ liệu.
Các file của một template phải được đặt trong thư mục /templates trong thư

mục cài đặt của Joomla. Nếu ta có 2 template đã được cài đặt thì thư mục của chúng
ta sẽ trông giống như sau:
/templates/mytemp1
/templates/mytemp2
Một template thường gồm các thành phần cơ bản sau: Phần khung giao diện
(index.php), phần thiết đặt hển thị (template_css.css), phần cài đặt
(templateDetails.xml), ngoài ra có thể có các file khác như các folder, các file .js,
file ảnh tùy thuộc vào độ phức tạp của template.
SV : Ngô Văn Bính Lớp CNTT K11
9
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
CHƯƠNG 2 : PHÂN TÍCH THIẾT KẾ HỆ THỐNG WEBSITE
2.1 Mô tả các chức năng của hệ thống
* Sự phân tích hệ thống về mặt xử lý nhằm mục đích lập một mô hình xử lý
của hệ thống, để trả lời câu hỏi “Hệ thống làm gì?”, tức là đi sâu vào bản chất, đi
sâu vào chi tiết của hệ thống về mặt xử lý thông tin, và chỉ diễn tả ở mức lôgíc, tức
là trả lời câu hỏi “Làm gì?” mà gạt bỏ câu hỏi “Làm như thế nào?”, chỉ diễn tả mục
đích, bản chất của quá trình xử lý mà bỏ qua các yếu tố về thực hiện, về cài đặt.
* Phương pháp phân tích:
Một phương pháp phân tích và thiết kế là sự hợp thành của ba yếu tố:
- Một tập hợp các khái niệm và mô hình, bao gồm các khái niệm cơ bản sử
dụng trong phương pháp cùng với các cách biểu diễn chúng.
- Một tiến độ triển khai, bao gồm các bước đi lần lượt, các hoạt động cần làm.
- Một công cụ trợ giúp, là một phần mềm giúp cho việc triển khai hệ thống
thực hiện theo phương pháp được chặt chẽ và nhanh chóng.
- Biểu đồ phân cấp chức năng là một loại biểu đồ diễn tả sự phân rã dần dần
các chức năng từ đại thể đến chi tiết. mỗi nút trong biểu đồ là một chức năng và
quan hệ duy nhất giữa các chức năng, diễn tả bởi các cung nối liền các nút, là quan
hệ bao hàm. Vì vậy biểu đồ phân cấp chức năng tạo thành một cấu trúc cây.
- Chức năng tìm kiếm thông tin sản phẩm

Bảng 1 : Chức năng tìm kiếm thông tin sản phẩm
Mô tả
Chức năng tìm kiếm sản phẩm theo từ khóa được
nhập vào.
Đầu vào Tên sản phẩm
Quá trình xử lý
Kiểm tra sự tương thích của tên, giá sản phẩm được
nhập vào.
Kết nối đến cơ sở dữ liệu.
Tìm kiếm thông tin theo tên, giá sản phẩm.
Đầu ra Hiển thị sản phẩm hoặc thông báo không tìm thấy.
SV : Ngô Văn Bính Lớp CNTT K11
10
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
- Chức năng hiển thị danh mục sản phẩm
Bảng 2: Chức năng hiển thị danh mục sản phẩm
Mô tả Hiển thị sản phẩm theo từng danh mục sản phẩm.
Đầu vào Đường link danh mục sản phẩm.
Quá trình xử lý Lấy tất cả các sản phẩm có trong cơ sở dữ liệu theo
danh mục.
Đầu ra Hiện thị danh sách sản phẩm.
- Chức năng chi tiết sản phẩm
Bảng 3: Chức năng chi tiết sản phẩm
Mô tả Hiển thị chi tiết sản phẩm.
Đầu vào Đường link tên sản phẩm, click vào ảnh sản phẩm.
Quá trình xử lý Truy xuất vào cơ sở dữ liệu để lấy thông tin chi tiết
sản phẩm.
Đầu ra Hiện thị thông tin chi tiết sản phẩm.
- Chức năng thống kê truy cập
Bảng 4: Chức năng thống kê truy cập

Mô tả Hiển thị số người truy cập vào website.
Đầu vào Người xem truy cập vào website
Quá trình xử lý Đếm số lượt truy cập.
Đầu ra Hiển thị số người đã truy cập website.
2.2 Biểu đồ phân cấp chức năng
Hình 1: Sơ đồ phân cấp chức năng
SV : Ngô Văn Bính Lớp CNTT K11
11
TRANG
CHỦ
SẢN
PHẨM
GIỚI
THIỆU
TIN TỨC LIÊN HỆ
BẢN
ĐỒ
WEBSITE
Danh
mục các
Module
Danh
mục sản
phẩm
Thông tin
Công ty
Thông tin
cập nhật
Thông tin
liện hệ

Hướng
dẫn
đường đi
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
2.3 Các ký hiệu sử dụng:
- Ký hiệu tác nhân ngoài:
- Ký hiệu tác nhân trong:
- Ký hiệu biểu diễn kho dữ liệu:
- Ký hiệu biểu thị các chức năng xử lý:
- Ký hiệu luồng dữ liệu:
Hình 2: Ký hiệu trong biểu đồ
2.4 Biểu đồ dữ liệu mức khung cảnh
Hình 3: Biểu đồ mức khung cảnh
2.5 Biểu đồ dữ liệu mức đỉnh
Sơ đồ mức đỉnh biểu diễn toàn bộ các chức năng liên kết của website nhằm giúp
người đọc hiểu sâu về cấu trúc cũng như chức năng của website khi nhìn vào biểu
đồ này:
SV : Ngô Văn Bính Lớp CNTT K11
12
Tên tác nhân
ngoài
Tên Kho
Tên chức
năng
Tên tác nhân trong
WEBSITE
KHÁCH
HÀNG
Tìm kiếm
Kết quả tìm kiếm

Phản hồi
Truy cập thông tin
Liên hệ
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
Hình 4: Biểu đồ mức đỉnh
SV : Ngô Văn Bính Lớp CNTT K11
13
Lấy thông tin
Yêu cầu xem thông tin
Thông tin
Thông tin hiển thị
Cập nhật
Danh mục giới thiệu
Cập nhật bản đồ
Bản đồ
Yêu cầu liên hệ
Xác nhận liên hệ
Cập nhật tin, liên hệ
Hiển thị kết quả
Thông tin liên hệ
Tin tức
Danh mục bản đồ
Cập nhật Trang chủ
Quản trị
Yêu cầu xem, tìm kiếm sản phẩm
Hiển thị thông tin SP
Gửi thông tin SP,DMSP
Danh sách sản phẩm
Yêu cầu cập nhật SP, DMSP
Danh sách DMSP

Khách hàng
Danh mục Trang chủ
Quản lý
sản phẩm
Quản lý
Giới thiệu
Quản lý
liên hệ, tin tức
Bản đồ chỉ dẫn
Quản lý
Trang chủ
Thông tin bản đồ
Y/c t/tin bản đồ
Thông tin cập nhật
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
2.6 Biểu đồ luồng dữ liệu mức dưới đỉnh
Biểu diễn các chức năng của hệ thống:
2.6.1 Chức năng quản lý sản phẩm
Hình 5: Sơ đồ mức dưới đỉnh quản lý sản phẩm
SV : Ngô Văn Bính Lớp CNTT K11
14
Danh sách DMSP
Khách hàng
Quản trị
Cập nhật DMSP
Hiển thị DMSP
Cập nhật sản phẩm
Thông tin mới về sản phẩm
Danh sách sản phẩm
Yêu cầu tìm kiếm

Kết quả tìm kiếm
Yêu cầu xem sản phẩm
Hiển thị sản phẩm
Cập nhật
DMSP
Cập nhật
sản phẩm
Tìm kiếm
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
2.6.2 Chức năng quản lý liên hệ, tin tức
Hình 6: Sơ đồ mức dưới đỉnh quản lý liên hệ, tin tức
2.6.3 Chức năng quản lý trang chủ
Hình 7: Sơ đồ mức dưới đỉnh quản lý trang chủ
SV : Ngô Văn Bính Lớp CNTT K11
15
Khách hàng
Thông tin liên hệ
Tin tức
Yêu cầu liên hệ
Thông tin xác nhận liên hệ
Cập nhật thông tin liên hệ
Hiển thị thông tin liên hệ
Yêu cầu xem tin tức
Hiển thị tin tức
Yêu cầu đăng tin
Hiển thị kết quả
Quản trị
Quản lý
liên hệ
Quản lý

tin tức
Khách hàng
Trang chủ
Y/c xem trang chủ
Thông tin trang chủ
Cập nhật trang chủ
Hiển thị thông tin
Quản trị
Quản lý
Trang chủ
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
2.6.4 Chức năng quản lý giới thiệu
Hình 8: Chức năng Quản lý giới thiệu
2.6.5 Chức năng quản lý bản đồ
Hình 9: Chức năng Quản lý bản đồ
- Mô tả các chức năng:
+ Đặc tả chức năng 1:
Tên chức năng: : Trang chủ
SV : Ngô Văn Bính Lớp CNTT K11
16
Khách hàng
Quản trị
Quản lý
Giới thiệu
Yêu cầu thông tin
Thông tin
Giới thiệu
Cập nhật thông tin
Thông tin cập nhật
Khách hàng

Bản đồ
Y/c xem bản đồ
Thông tin địa chỉ
Cập nhật bản đồ
Hiển thị bản đồ
Quản trị
Quản lý
Bản đồ
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
Toàn bộ thông tin nổi bật cập nhật được hiển thị tại đây, các module chức
năng được hiển thị nhằm giúp khách hàng truy cập một cách nhanh nhất thuận tiện
cho công việc.
+ Đặc tả chức năng 2:
Tên chức năng: Giới thiệu
Thông tin, lịch sử doanh nghiệp được hiển thị tại đây, khách hàng truy vấn để
biết thêm về doanh nghiệp
+ Đặc tả chức năng 3:
Tên chức năng: Sản phẩm
Khi khách hàng cần mua hay yêu cầu về sản phẩm thì chỉ việc liên hệ và đạt
hàng.
+ Đặc tả chức năng 4:
Tên chức năng: Tin tức
Mỗi tin tức mới nhất được cập nhật nhằm giúp khách hàng có thông tin mới
nhất về sản phẩm và các chương trình khuyến mãi
+ Đặc tả chức năng 5:
Tên chức năng: Liên hệ
Hàng ngày bộ phận thu thập email và các thông tin liên hệ để phản hồi kịp thời
cho khách hàng.
+ Đặc tả chức năng 6:
Tên chức năng: Bản đồ

Bản đồ giúp khách hàng thuận tiện cho việc đi đến địa chỉ cơ quan , tạo
thuận lợi cho công việc.
2.7 Xây dựng biểu đồ thực thể liên kết (E-R)
2.7.1. Xác định các thực thể và các thuộc tính
Các thực thể và các thuộc tính tương ứng của hệ thống như sau :
Danh mục sản phẩm (mã danh mục, tên danh mục).
SV : Ngô Văn Bính Lớp CNTT K11
17
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
Sản phẩm (mã sản phẩm, tên sản phẩm, hình ảnh minh họa, thông tin sản
phẩm, giá bán, thời gian bảo hành, mã danh mục) : chứa thông tin liên quan đến sản
phẩm.
Khách hàng (mã khách hàng, tên khách hàng, ngày sinh, số điện thoại, địa
chỉ, email) : Lưu trữ thông tin liên quan đến khách hàng.
Liên hệ (mã liên hệ, tiêu đề, nội dung, ngày gửi, người gửi) : Lưu trữ các liên
hệ của khách hàng về sản phẩm, công ty …
Tin tức (mã tin tức, ngày đăng, người đăng, tiêu đề, nội dung) : Lưu trữ
những tin tức khuyến mại, tin tức về sản phẩm mới.
Ban quản trị (mã quản trị, tên đăng nhập, mật khẩu): Lưu giữ thông tin quản
trị.
Giới thiệu (mã giới thiệu, tên công ty, ngành nghề, nội dung).
Bản đồ (mã bản đồ, vị trí, đường đi).
2.7.2. Xác định các liên kết
Liên kết giữa thực thể Danh mục sản phẩm và Sản phẩm là liên kết 1 – n (1-
nhiều) vì một sản phẩm sẽ thuộc một loại sản phẩm còn một loại sản phẩm có thể
có nhiều sản phẩm.
Liên kết giữa thực thể Khách hàng và Liên hệ là liên kết 1 – n vì một khách
hàng có thể liên hệ nhiều lần.
Liên kết giữa thực thể Ban quản trị và Phản hồi là liên kết 1 – n vì một ban
quản trị có thể có nhiều phản hồi còn một phản hồi chỉ thuộc về 1 ban quản trị.

Liên kết giữa thực thể Liên hệ và Phản hồi là liên kết 1 – n vì một góp ý có
thể có nhiều phản hồi còn một phản hồi chỉ cho một góp ý.
Liên kết giữa Ban quản trị và Tin tức là liên kết 1 – n vì một ban quản trị có
thể đăng nhiều tin tức còn một tin tức chỉ do một ban quản trị đăng.
Liên kết giữa thực thể Khách hàng và Bản đồ là liên kết 1 – n vì một khách
hàng có thể xem bản đồ nhiều lần.
Liên kết giữa thực thể Khách hàng và Giới thiệu là liên kết 1 – n vì một
khách hàng có thể xem bài giới thiệu nhiều lần.
SV : Ngô Văn Bính Lớp CNTT K11
18
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
2.7.3. Biểu đồ thực thể - liên kết (E-R)
Từ những phân tích ở trên, ta xây dựng sơ đồ thực thể - liên kết như sau :
Hình 10 Sơ đồ thực thể - liên kết
2.8 Phân tích việc phân bố được lưu trữ bởi các thực thể vào các bảng
dữ liệu của Joomla.
Các thực thể ánh xạ tới CSDL trong joomla:
Trang chủ: liên kết từ bảng Table: jos_content_frontpage
Sản phẩm: liên kết từ bảng Table: jos_vm_product
Giới thiệu: liên kết từ bảng Table: jos_content
Tin tức: liên kết từ bảng Table: jos_content
Bản đồ liên kết từ bảng Table: jos_content
SV : Ngô Văn Bính Lớp CNTT K11
Khách hàng
Mã khách hàng
Tên khách hàng
Ngày sinh
Điện thoại
Địa chỉ
Email

Mật khẩu
Phản hồi
Mã phản hồi
Mã liên hệ
Mã quản trị
Ngày phản hồi
Nội dung
Tin tức
Mã tin
Tiêu đề
Nội dung
Ngày đăng
Mã quản trị
Liên hệ
Mã liên hệ
Mã khách hàng
Tiêu đề
Nội dung
Ngày góp ý
Ban quản trị
Mã quản trị
Tên đăng nhập
Mật khẩu
Email
Nhóm quyền
quản trị
Mã quyền hạn
Mã quản trị
Bản đồ
Đường đi

Địa chỉ
Giới thiệu
Tên công ty
Nội dung
Sản phẩm
Mã sản phẩm
Tên sản phẩm
Đơn giá
Thông tin
Bảo hành
Danh mục SP
Mã danh mục
Tên danh mục
1
1
1
1
1
1
1
1
1
n
n
n
n
n
n
n
n

n
Nhóm quyền
Mã quyền hạn
Tên quyền hạn
1
n
1
n
19
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
2.9 Thiết kế code website
Joomla bao gồm các file: index.php, templateDetails, xml, params.ini,
template_thumbnail.png và các thư mục: css, images, html…Nói chung có bao
nhiêu thì còn do nhu cầu người dùng tạo ra. Trước mắt, chúng ta chỉ cần quan tâm
đến các thành phần chính tạo ra 1 template đó là:
- Index.php - File này là trung tâm xử lý của template, bao gồm cả việc hiển
thị các module và component. Ngoài ra, mọi client-side JavaScript cũng được khai
báo tại đây.
- TemplateDetails.xml - File này bao gồm các thẻ meta khai báo thông tin về
template, được sử dụng bởi giao diện quản trị của joomla nhằm mục đích khai báo
thông tin cho việc cài đặt và bảo trì. Những thiết lập được lưu trong file bao gồm
một danh sách của mọi file tạo ra template, tác giả và thông tin công bố, và các
thông số sẵn có cho người sử dụng sửa đổi thông qua admincp.
- Template_thumbnail.png - Ảnh thumbnail demo của template, ảnh này
thường có độ rộng là 140px và chiều cao là 90px, và được hệ thống joomla sử dụng
làm ảnh demo cho template trong admincp.
css - Nơi lưu trữ các file CSS được sử dụng bởi template. Thông thường, file
template.css đặt ở đây.
- Images - Nơi lưu trữ hầu hết các file hình ảnh được sử dụng bởi template.
SV : Ngô Văn Bính Lớp CNTT K11

20
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
Hình 11: Sơ đồ thiết kế website
2.9.1 Mã code cho file index.php
File index.php là file template chủ đạo, và là tập tin cần thiết nhất cho việc
sử dụng template bởi CMS Joomla. File index.php là 1 tập tin bao gồm cả mã
HTML và PHP.
Các đoạn mã HTML thông thường cung cấp các phần tử văn bản (các thẻ
div) có tổ chức liên kết chặt chẽ các stylesheets riêng lẻ (thuộc tính của từng thẻ
div, thường được viết trong file css) cho việc định dạnh trình bày template của
website.
Còn lại, các đoạn mã PHP sẽ đảm đương phần khai báo hiển thị nội dung
như các module, component của website.
SV : Ngô Văn Bính Lớp CNTT K11
21
MENU
LOGO
TIN BÀI MỚI NHẤT
DANH SÁCH BÀI ĐÃ ĐĂNG…
THÔNG TIN DOANH NGHIỆP
MODULE 1
BÀI VIẾT 1
SLIDE ẢNH ĐỘNG
MODULE 2
MODULE …
BÀI VIẾT 2
BANNER QUẢNG CÁO
MENU CHỨC NĂNG
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
- Code của Header (logo) kết nối từ mod_header:

<! HEADER >
<div id="ja-header" class="wrap">
<div class="main clearfix">
<div class="inner clearfix">
<h1 class="logo">
<a href="/index.php" title=".: KhangDung.com :."><span>.:
KhangDung.com :.</span></a>
</h1>

</div>
</div>
</div>
<! //HEADER >
- Code của Menu chức năng kết nối từ mod_mainmenu:
<div id="ja-mainnav" class="wrap">
<div class="main clearfix">

<div id="ja-menunav">
<div class="ja-megamenu">
<ul class="megamenu level0"><li class="mega active first"><a
href=" class="mega active first" id="menu1"
title="Home"><span class="menu-title">Home</span></a></li>
<li class="mega"><a href="/index.php?option=com_virtuemart &amp; Itemid=55 "
class="mega" id="menu55" title="Sản phẩm"><span class="menu-title">Sản
phẩm</span></a></li>
<li class="mega"><a href="/index.php?
option=com_content &amp; view=article &amp; id=46 &amp; Itemid=27 " class="mega"
id="menu27" title="Giới thiệu"><span class="menu-title">Giới
thiệu</span></a></li>
<li class="mega"><a href="/index.php?

option=com_content &amp; view=category &amp; layout=blog &amp; id=1 &amp; Itemid=
50" class="mega" id="menu50" title="Tin tức"><span class="menu-title">Tin
tức</span></a></li>
<li class="mega"><a href="/index.php?
option=com_content &amp; view=article &amp; id=47 &amp; Itemid=37 " class="mega"
id="menu37" title="Đối tác"><span class="menu-title">Đối
tác</span></a></li>
<li class="mega"><a href="/index.php?
option=com_content &amp; view=article &amp; id=48 &amp; Itemid=41 " class="mega"
id="menu41" title="Liên hệ"><span class="menu-title">Liên
hệ</span></a></li>
<li class="mega last"><a href="/index.php?
option=com_content &amp; view=article &amp; id=49 &amp; Itemid=48 " class="mega
last" id="menu48" title="Bản đồ"><span class="menu-title">Bản
đồ</span></a></li>
</ul>
- Code của Slide ảnh động:
<div id="slideshowproboxwrapper">
SV : Ngô Văn Bính Lớp CNTT K11
22
GVHD: Phạm Xuân Lâm Báo cáo thực tập tốt nghiệp
<div class="slideshowprobox"><ul><li><a href="javascript:void(0);"><img
src="
border="0" alt="Photo Title 1" title="Photo Title 1" /></a></li><li><a
href="javascript:void(0);"><img
src="
border="0" alt="Photo Title 2" title="Photo Title 2" /></a></li><li><a
href="javascript:void(0);"><img
src="
border="0" alt="Photo Title 3" title="Photo Title 3" /></a></li><li><a

href="javascript:void(0);"><img
src="
border="0" alt="Photo Title 4" title="Photo Title 4" /></a></li><li><a
href="javascript:void(0);"><img
src="
border="0" alt="Photo Title 12" title="Photo Title 12"
/></a></li></ul></div>
</div>
- Code của Tìm kiếm kết nối từ com_search:
<! BEGIN Search Box >
<form action="index.php?
page=shop.browse&amp;option=com_virtuemart&amp;Itemid=55" method="post">
<p><label for="keyword">Search</label></p>
<p>
<input name="keyword" type="text" size="12"
title="Search" class="inputbox" id="keyword" />
<input class="button" type="submit" name="Search"
value="Search" />
</p>
</form>
<! End Search Box >
- Code của Footer kết nối từ mod_footer:
</div><small>Copyright &#169; 2012 .: KhangDung.com : All Rights
Reserved. Designed by
<a href=" title="KhangDung.com"
target="blank">KhangDung</a>.</small>
<! <small><a href="">Joomla!</a> is Free Software
released under the <a href=" />2.0.html">GNU/GPL License.</a></small>
2.9.2 Mã code cho file config
Cấu hình giúp website hoạt động và kết nối được bình thường:

<?php
class JConfig {
var $offline = '0';
var $editor = 'tinymce';
var $list_limit = '20';
var $helpurl = '';
var $debug = '0';
var $debug_lang = '0';
SV : Ngô Văn Bính Lớp CNTT K11
23

×