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Ũ
Trang 1MỤC LỤC
LỜI MỞ ĐẦU 1
CHƯƠNG 1: TỔNG QUAN VỀ NGÔN NGỮ XÂY DỰNG WEBSITE (MÃ NGUỒN JOOMLA) 3
1.1 Giới thiệu chung về Joomla 3
1.1.1 Lịch sử phát triển và khái niệm về Joomla 3
1.1.2 Ứng dụng của Joomla 4
1.2 Các khái niệm cơ bản trong Joomla 5
1.2.1 Front-end và back-end 5
1.2.2 Các thành phần mở rộng 5
CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ HỆ THỐNG WEBSITE 10
2.1 Mô tả các chức năng của hệ thống 10
2.2 Biểu đồ phân cấp chức năng 11
2.3 Các ký hiệu sử dụng 12
2.4 Biểu đồ dữ liệu mức khung cảnh 12
2.5 Biểu đồ dữ liệu mức đỉnh 12
2.6 Biểu đồ luồng dữ liệu mức dưới đỉnh 14
2.6.1 Chức năng quản lý sản phẩm 14
2.6.2 Chức năng quản lý liên hệ, tin tức 15
2.6.3 Chức năng quản lý trang chủ 15
2.6.4 Chức năng quản lý giới thiệu 16
2.6.5 Chức năng quản lý bản đồ 16
2.7 Xây dựng biểu đồ thực thể liên kết (E-R) 17
2.7.1 Xác định các thực thể và các thuộc tính 17
2.7.2 Xác định các liên kết 18
2.7.3 Biểu đồ thực thể - liên kết (E-R) 19
Trang 22.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 19
2.9 Thiết kế code website 20
2.9.1 Mã code cho file index.php 21
2.9.2 Mã code cho file Config 23
CHƯƠNG 3: CÔNG CỤ CÀI ĐẶT VÀ TRIỂN KHAI WEBSITE 25
3.1 Quy trình cài đặt website trên Joomla 25
3.1.1 Cài đặt webserver – Xampp 25
3.1.2 Cài đặt website Joomla 31
3.1.3 Cài đặt thành phần mở rộng trong Joomla 35
3.2 Quản trị hệ thống website trên Joomla 38
3.2.1 Các chức năng của hệ quản trị joomla 38
3.2.2 Môi trường kỹ thuật triển khai thiết kế website 47
3.3 Hình ảnh demo website 47
3.3.1 Giao diện trang chủ của website 47
3.3.2 Giao diện các chức năng 50
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 51
1 Đánh giá website 53
1.1 Ưu điểm 51
1.2 Nhược điểm 52
2 Hướng phát triển website 52
DANH MỤC TÀI LIỆU THAM KHẢO 54
Trang 3DANH MỤC HÌNH VẼ
Hình 1: Sơ đồ phân cấp chức năng 11
Hình 2: Ký hiệu trong biểu đồ 12Hình 3: .Biểu đồ mức khung cảnh .12
Hình 4: Biểu đồ mức đỉnh 13
Hình 5: Sơ đồ mức dưới đỉnh quản lý sản phẩm 14
Hình 6: Sơ đồ mức dưới đỉnh quản lý liên hệ, tin tức 15
Hình 7: Sơ đồ mức dưới đỉnh quản lý trang chủ 15
Hình 8: Chức năng Quản lý giới thiệu 16
Hình 9: Chức năng Quản lý bản đồ 16
Hình 10: Sơ đồ thực thể - liên kết 19
Hình 11: Sơ đồ thiết kế website 21
Trang 4LỜ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ămgần đây, Internet đã trở nên thân quen và dần trở thành một công cụ không thể thiếutrong 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àină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 naychỉ 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ànthế 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àngbiế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 ảnhCô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 đặtcầ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, độingũ nhân viên kinh doanh trẻ, nhiệt huyết, đội ngũ kĩ sư kĩ thuật và công nhân sảnxuất có tay nghề cao về inox, sắt, đồ gỗ, mang lại cho khách hàng những sản phẩmhoà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 tintưởng đã và đang từng bước xây dựng KHANG DŨNG thành một thương hiệumạ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ế đếnkhâ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ảnxuất để đảm bảo chất lượng xuất xưởng của mỗi sản phẩm
Trang 5KHANG DŨNG luôn đổi mới sáng tạo cả về hình dáng, mẫu mã và kết cấucủ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àngluô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ớikhá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ácmục tiêu cao hơn trong sản xuất kinh doanh, không ngừng hoàn thiện chất lượngsả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ênnhữ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
Trang 6
CHƯƠNG 1: TỔNG QUAN VỀ NGÔN NGỮ XÂY DỰNG
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ônngữ 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ênInternet
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âmhiệ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ấpnhiề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í chotấ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 SoftwareSolutions - Ú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ư mongmuố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ầnmềm (Software Freedom Law Center - SFLC), 20 thành viên nòng cốt cũ của
Trang 7Mambo đã thành lập một tổ chức phi lợi nhuận khác lấy tên là Open SourceMatters, để hỗ trợ về mặt tổ chức, pháp lý và kinh phí cho dự án mã nguồn mở cònchưa được đặt tên của họ Ngay ngày hôm sau, 1000 người đã gia nhập diễn đànOpenSourceMatters, hầu hết các bài viết cho diễn đàn đều khuyến khích và đồngtình với hành động của Nhóm Phát triển Tin trên đã nhanh chóng được đăng tảitrên các tạp chí newsforge.com, eweek.com và ZDnet.com Trong một thông báocủ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à đếnngà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 Internethoặ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 chotớ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ậycao Joomla là sản phẩm mã nguồn mở do đó việc sử dụng Joomla là hoàn toànmiễ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ứctạ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ử
Trang 8 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 manglạ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
* end: end (tiền sảnh), còn được biết với tên gọi Public 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
Front-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ìnhthườ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ướckiểm tra tài khoản
Phần back-end được truy cập thông qua đường dẫn:
Trang 9giữ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ặcnhữ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 ứngdụ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, tinkhẩ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ấthiện,vùng đặt nó, và cấp độ truy cập Từ danh sách chọn module bạn muốn cấuhì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ộtloại module cụ thể được định từ trước Dưới những tiêu đề danh sách cụ thể đượchiể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ềuthể 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ó
Trang 10thể 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 (contentnày không liên quan gì đến các Section, Category hay Static Content Item) hay RSSfeed 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ỗimodule 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ínhnăng với component của các hãng thứ ba Những component được gắn sẵn, cả baogồ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
Trang 11component của hãng thứ ba tại Joomla Forge cũng như tại rất nhiều nhà phát triểnthứ ba và những site cộng đồng Cấu hình và trợ giúp thêm thường được cung cấpvới kèm với chính component Những component là mô phỏng tự nhiên, điều nàylà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ảnhnà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 itemnà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
* Menu:
Joomla có rất nhiều kiểu Menu, mỗi Menu sẽ là một trang hiển thị có nộidung 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
Trang 12Tấ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 hayUnpublish.
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 quacá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ềukhiể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
Trang 13CHƯƠ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, đisâ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ốngthự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ầncá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.
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
Trang 14- 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
Đầ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
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
Trang 152.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
Tên Kho
Tên chức năngTên tác nhân trong
WEBSITEKHÁCH
HÀNG
Tìm kiếmKết quả tìm kiếm
Phản hồiTruy cập thông tinLiên hệ
Trang 16Hình 4: Biểu đồ mức đỉnh
Lấy thông tin
Yêu cầu xem thông tin
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
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
Trang 172.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:
Cập nhậtsản phẩm
Tìm kiếm
Trang 182.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ủ
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ị 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ủ
Trang 192.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
Thông tin
Giới thiệuCập nhật thông tin
Quản trịQuản lý
Bản đồ
Trang 20Toà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
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ờicho khách hàng
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).
Trang 21Sả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ảnphẩ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
Trang 222.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
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 n
1
n
Trang 232.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ó baonhiê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 khaibá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áothô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ồmmộ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ácthô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ụnglà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, filetemplate.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.
Trang 24Hì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ủawebsite
Còn lại, các đoạn mã PHP sẽ đảm đương phần khai báo hiển thị nội dungnhư các module, component của website
MENU
LOGO
TIN BÀI MỚI NHẤT
DANH SÁCH BÀI ĐÃ ĐĂNG…
THÔNG TIN DOANH NGHIỆP
MENU CHỨC NĂNG
Trang 25- 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">
- 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=" http://khangdung.com/ " 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 & 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 & view=article & id=46 & 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 & view=category & layout=blog & id=1 & 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 & view=article & id=47 & 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 & view=article & id=48 & 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 & view=article & id=49 & 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">
Trang 26<div class="slideshowprobox"><ul><li><a href="javascript:void(0);"><img src=" http://khangdung.com/modules/mod_slideshow_pro/photos/photo01.jpg " border="0" alt="Photo Title 1" title="Photo Title 1" /></a></li><li><a href="javascript:void(0);"><img
src=" http://khangdung.com/modules/mod_slideshow_pro/photos/photo02.jpg " border="0" alt="Photo Title 2" title="Photo Title 2" /></a></li><li><a href="javascript:void(0);"><img
src=" http://khangdung.com/modules/mod_slideshow_pro/photos/photo03.jpg " border="0" alt="Photo Title 3" title="Photo Title 3" /></a></li><li><a href="javascript:void(0);"><img
src=" http://khangdung.com/modules/mod_slideshow_pro/photos/photo04.jpg " border="0" alt="Photo Title 4" title="Photo Title 4" /></a></li><li><a href="javascript:void(0);"><img
src=" http://khangdung.com/modules/mod_slideshow_pro/photos/photo5.jpg " 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&option=com_virtuemart&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 © 2012 : KhangDung.com : All Rights
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:
Trang 27var $sef = '0';
var $sef_rewrite = '0';
var $sef_suffix = '0';
var $feed_limit = '10';
var $feed_email = 'author';
var $secret = 'HhdRldd0Q9esguMP';
var $gzip = '0';
var $error_reporting = '-1';
var $xmlrpc_server = '0';
var $log_path = '/httpdocs/logs';
var $tmp_path = '/httpdocs/tmp';
var $cache_handler = 'file';
var $memcache_settings = array();
var $dbtype = 'mysql';
var $host = 'localhost';
var $user = 'dungkensin';
var $db = 'khangdung_com_0307';
var $dbprefix = 'jos_';
var $mailer = 'mail';
var $mailfrom = 'thienbinhca@gmail.com';
var $fromname = '.: Khang Dũng || Cầu thang đẹp || Các sản phẩm Inox || Các sản phẩm Sắt || Gia công Sắt - Inox theo yêu cầu :.'; var $sendmail = '/usr/sbin/sendmail';
var $session_handler = 'database';
var $password = 'admin123';
var $sitename = '.: KhangDung.com :.';
var $MetaDesc = '.: Khang Dũng || Cầu thang đẹp || Các sản phẩm Inox || Các sản phẩm Sắt || Gia công Sắt - Inox theo yêu cầu :.'; var $MetaKeys = : Khang Dũng || Cầu thang đẹp || Các sản phẩm Inox || Các sản phẩm Sắt || Gia công Sắt - Inox theo yêu cầu :.'; var $offline_message = 'Website đang được bảo trì!';
}
?>
Trang 28CHƯƠNG 3: CÔNG CỤ CÀI ĐẶT VÀ TRIỂN KHAI WEBSITE
3.1 Quy trình cài đặt website trên Joomla
3.1.1 Cài đặt webserver – XAMPP
Muốn website có thể chạy trên máy chủ thì cần phải có một web server là
Apache, bộ thông dịch ngôn ngữ PHP, ngôn ngữ truy vấn cơ sở dữ liệu là mySQL.Đây là ba thành phần độc lập với nhau nhưng là bộ tam không thể thiếu nhau Vớingười bình thường nếu muốn 3 thành này chạy với nhau một cách tốt đẹp thì bạnphải có nhiều kiến thức sâu rộng về chúng vì thế sẽ gây khó khăn cho người mớihọc Từ nhu cầu đó mà một gói phần mềm tích hợp 3 thành phần trên đã ra đời Cónhiều phần mềm tích hợp 3 thành phần này Nhưng hiện nay, gói phần mềm chạy
ổn định nhất đó là XAMPP Do vậy em chọn XAMPP để thực hiện việc xây dựng,thiết kế website Khang Dũng
* Quy trình cài đặt XAMPP được thực hiện theo quy trình sau :
Sau khi download thành công, bạn click đúp vào file
xampp-win32-1.7.7-VC9-installer.exe để cài đặt XAMPP Bạn chọn ngôn ngữ cài đặt là English và
nhấn OK để tiếp tục