MỤC LỤC
LỜI CẢM ƠN
LỜI CAM ĐOAN
MỤC LỤC
DANH MỤC CÁC HÌNH VẼ
DANH MỤC CÁC TỪ VIẾT TẮT
LỜI GIỚI THIỆU....................................................................................................1
TÓM TẮT................................................................................................................2
ABSTRACT.............................................................................................................2
CÁC TỪ KHÓA......................................................................................................2
CHƯƠNG 1
MỞ ĐẦU............................................................3
1.1 YÊU CẦU THỰC TẾ VÀ TÍNH CẤP THIẾT CỦA ĐỀ TÀI ........................3
1.2 ĐỐI TƯỢNG VÀ PHẠM VI ÁP DỤNG.........................................................4
1.2.1 Đối tượng nghiên cứu.......................................................................................................................4
1.2.2 Phạm vi áp dụng...............................................................................................................................4
1.3 HƯỚNG TIẾP CẬN CỦA LUẬN VĂN..........................................................5
CHƯƠNG 2
TỔNG QUAN VỀ CÔNG NGHỆ WEB ĐỘNG PHP VÀ .........7
HỆ QUẢN TRỊ NỘI DUNG JOOMLA..............................7
2.1. CÔNG NGHỆ WEB ĐỘNG ...........................................................................7
2.2. KIẾN TRÚC CƠ BẢN.....................................................................................7
2.3 GIỚI THIỆU CÁC NGÔN NGỮ WEB ĐƯỢC SỬ DỤNG.............................9
2.3.1 Giới thiệu về HTML .........................................................................................................................9
2.3.2 Giới thiệu về JavaScript.................................................................................................................10
2.3.3 Tích hợp JavaScript vào HTML.....................................................................................................13
2.3.4 Giới thiệu về PHP ..........................................................................................................................15
2.3.5 Giới thiệu về MYSQL......................................................................................................................16
CHƯƠNG 3
NỘI DUNG VÀ KẾT QUẢ NGHIÊN CỨU.........................20
3.1 PHÁT BIỂU BÀI TOÁN ..............................................................................20
3.2 ĐẶC TẢ NGHIỆP VỤ....................................................................................21
...............................................................................................................................22
HÌNH 3.1. MÔ HÌNH GIA PHẢ.................................................................................22
..................................................................................22
3.3 GIẢI PHÁP PHÂN TÍCH, THIẾT KẾ CÁC MÔ HÌNH................................23
3.3.1 Phân tích, thiết kế thống theo phương pháp hướng đối tượng.......................................................23
3.3.2 Ưu điểm của phương pháp phân tích thiết kế hướng đối tượng ....................................................24
3.4. ĐẶC TẢ HỆ THỐNG....................................................................................24
3.4.1. Biểu đồ trường hợp người sử dụng (Use Case Diagram)............................................................25
3.4.2 Biểu đồ Lớp....................................................................................................................................28
3.4.3 Biểu đồ trình tự và biểu đồ cộng tác...............................................................................................30
3.4.3.1 Biểu đồ trình tự mô tả usecase duyệt cây gia phả và xem thông tin trích lục người dùng..........30
3.4.3.2 Biểu đồ cộng tác mô tả usecase duyệt cây gia phả và xem thông tin trích lục người dùng........31
...........................................................................................................................................................32
3.4.3.3 Biểu đồ trình tự mô tả usecase duyệt cây gia phả và xem thông tin trích lục của người quản trị
.................................................................................................................................................................34
3.4.3.4 Biểu đồ cộng tác mô tả usecase duyệt cây gia phả và xem thông tin trích lục người quản trị...35
3.4.3.5 Biểu đồ trình tự mô tả usecase thêm, sửa, xóa thông tin người..................................................36
3.4.3.6 Biểu đồ cộng tác mô tả usecase thêm, sửa, xóa thông tin người.................................................39
3.4.3.7 Biểu đồ trình tự mô tả usecase thêm, sửa, xóa thông tin vợ........................................................40
3.4.3.8 Biểu đồ cộng tác mô tả usecase thêm, sửa, xóa thông tin vợ......................................................41
3.4.3.9 Biểu đồ trình tự mô tả usecase thêm, sửa, xóa thông tin chức vị................................................42
3.4.3.10 Biểu đồ cộng tác mô tả usecase thêm, sửa, xóa thông tin chức vị.............................................43
3.4.3.11 Biểu đồ trình tự mô tả usecase thêm, sửa, xóa thông tin mộ táng. .........................................44
3.4.3.12 Biểu đồ cộng tác mô tả usecase thêm, sửa, xóa thông tin mộ táng ..........................................45
3.4.3.13 Biểu đồ trình tự mô tả usecase xóa thông tin người chi tiết .....................................................46
............................................................................................................................46
3.5. CÀI ĐẶT........................................................................................................47
3.5.1 Trang của người truy cập...............................................................................................................47
3.5.1.1 Trang chủ (hiển thị phả hệ đồ)....................................................................................................47
3.5.1.2 Trang hiển thị thông tin trích lục của từng thành viên...............................................................48
3.5.1.3. Trang hiển thị thông tin khác của từng thành viên.....................................................................48
3.5.2. Trang của người quản trị...............................................................................................................49
3.5.2.1. Trang chủ (hiển thị phả hệ đồ)...................................................................................................49
3.5.2.2 Trang hiển thị thông tin trích lục của từng thành viên................................................................50
* Trường hợp đặc biệt, hiển thị thông tin trích lục của thủy tổ...............................................................50
3.5.2.4 Trang cập nhật thông tin người...................................................................................................52
3.5.2.5 Trang cập nhật thông tin vợ........................................................................................................53
3.5.2.6 Trang thêm thông tin vợ..............................................................................................................54
3.5.2.7 Trang thêm thông tin con.............................................................................................................55
3.5.2.8 Trang cập nhật thông tin chức vị.................................................................................................55
3.5.2.9 Trang thêm thông tin chức vị ......................................................................................................56
3.5.2.10 Trang cập nhật thông tin mộ táng.............................................................................................56
3.5.2.11 Trang thêm thông tin mộ táng...................................................................................................56
3.5.2.12 Trang xóa (chỉ có thể xóa những thành viên không có con).....................................................57
KẾT LUẬN............................................................................................................58
PHỤ LỤC 1
PHỤ LỤC 2
TÀI LIỆU THAM KHẢO
DANH MỤC CÁC HÌNH VẼ
Hình 1.1 Mô hình hoạt động giữa máy chủ Server và trình duyệt Browser.
Hình 3.1 Mô hình gia phả.
Hình 3.2 Biểu đồ Usecase.
Hình 3.3 Biểu đồ lớp mô tả các trang giao diện.
Hình 3.4 Biểu đồ lớp.
Hình 3.5 Biểu đồ trình tự duyệt cây và xem thông tin trích lục của người dùng.
Hình 3.6 Biểu đồ cộng tác duyệt cây và xem thông tin trích lục của người dùng.
Hình 3.7 Biểu đồ trình tự duyệt cây và xem thông tin trích lục của người quản trị.
Hình 3.8 Biểu đồ cộng tác duyệt cây và xem thông tin trích lục của người quản trị.
Hình 3.9 Biểu đồ trình tự thêm, sửa, xóa thông tin người.
Hình 3.10 Biểu đồ cộng tác thêm, sửa, xóa thông tin người.
Hình 3.11 Biểu đồ trình tự thêm, sửa, xóa thông tin vợ.
Hình 3.12 Biểu đồ cộng tác thêm, sửa, xóa thông tin vợ.
Hình 3.13 Biểu đồ trình tự thêm, sửa, xóa thông tin chức vị.
Hình 3.14 Biểu đồ cộng tác thêm, sửa, xóa thông tin chức vị.
Hình 3.15 Biểu đồ trình tự thêm, sửa, xóa thông tin mộ táng.
Hình 3.16 Biểu đồ cộng tác thêm, sửa, xóa thông tin mộ táng.
Hình 3.17 Biểu đồ trình tự xóa thông tin người chi tiết.
DANH MỤC CÁC TỪ VIẾT TẮT
CMS
CSDL
CSS
HĐH
HTML
IIS
PHP
Content management System
Cơ sở dữ liệu
Cascading Style Sheets
Hệ điều hành
HyperText Markup Language
Internet Information System
Hypertext Processcor
Xây dựng trang Web gia phả trên nền hệ quản trị nội dung Jomla
LỜI GIỚI THIỆU
Tục ngữ có câu:
“Chim có tổ người có tông
Cây có gốc nước có nguồn”
Việc lập gia phả là ý tưởng của tiền nhân từ xưa đến nay, nó có một ý nghĩa sâu sắc,
có ảnh hưởng lớn lao trong tập quán, truyền thống của người Việt Nam. Gia phả
giúp ta tưởng nhớ đến tổ tông, công ơn của ông bà, nó duy trì kỷ cương, lễ giáo đặt
nền tảng đạo lý cho gia đình mỗi người, kiểm điểm lại sự còn mất, sự phát triển của
tộc họ, mà cố gắng chấn chỉnh lại nếp ăn ở của mỗi người trong tông môn đồng thời
đặt nền móng việc thờ phụng tổ tiên cho được quy cũ hơn với mục đích “cùng nhau
uống nước nhớ nguồn”.
Việc lập gia phả ngoài đời bằng cách biên chép tay thường rất phức tạp và gặp rất
nhiều khó khăn trong việc quản lý từng thành viên trong gia phả. Tuy nhiên, nếu
chúng ta áp dụng những công nghệ máy tính để tiến hành công việc này thì nó sẽ
trở nên dễ dàng và tiện lợi. Với ý tưởng đó, em đã tiến hành tìm hiểu về gia phả và
xây dựng một trang Web để hỗ trợ cho người dùng có thể biên chép và quản lý gia
phả một cách trực quan, đơn giản, nhanh chóng và tiện lợi.
Trang 1
Xây dựng trang Web gia phả trên nền hệ quản trị nội dung Jomla
TÓM TẮT
Gia phả có vai trò rất quan trọng trong đời sống, lịch sử và văn hóa của con người
Việt Nam. Vì thế việc biên soạn gia phả đóng vai trò lưu giữ thông tin của con
người của các dòng họ qua từng thế hệ. Luận văn này xây dựng trang Web gia phả
để khắc phục những hạn chế trong việc biên soạn gia phả truyền thống. Trang Web
được xây dựng dựa vào việc sử dụng các thư viện, công cụ và tiện ích của hệ quản
trị nội dung viết bằng PHP Joomla. Luận văn xây dựng một component của Joomla
tích hợp với các thành phần sẵn có của Jommla cho phép thực hiện toàn bộ thao tác
nghiệp vụ biên soạn và tra cứu gia phả. Component này là cơ sở cho việc tích hợp
các nội dung đặc thù của gia phả với các loại nội dung khác của hệ quản trị nội
dung Joomla. Tuy nhiên trong thời gian hạn hẹp luận văn chưa xây dựng sản phẩm
hoàn thiện có chức năng phong phú và tích hợp nhiều loại nội dung.
ABSTRACT
Family tree is very important to Vietnamese’s life, history and culture. Therefore,
family tree composing and editing plays the role of information storing for every
member of family through every generation. This thesis build family tree website to
overcome the limits in traditional family tree composing and editing. The website is
implemented basing on utilizing libraries, tools and ultilities of content management
system (CMS) Joomla programming in PHP. The thesis implement a Joomla
component integrated with available components and modules of Joomla that
enable user perform all of family tree composing, editing, navigating and browsing
business processes. This component is the foundation for integrating particular and
specific contents of family tree with other kinds of contents of Joomla CMS.
However, in a limited time for accomplishing, the thesis hasn’t built a completed
product with the abundant functionalities and integrating many kinds of contents.
CÁC TỪ KHÓA
GIA PHẢ, HỆ QUẢN TRỊ NỘI DUNG, MYSQL, PHP
Trang 2
Xây dựng trang Web gia phả trên nền hệ quản trị nội dung Jomla
CHƯƠNG 1
MỞ ĐẦU
1.1 YÊU CẦU THỰC TẾ VÀ TÍNH CẤP THIẾT CỦA ĐỀ TÀI
Ở Việt Nam, gia phả giữ một vai trò quan trọng trong gia đình, gia tộc và ngoài
xã hội. Việc làm gia phả của người xưa nhằm hai mục đích: trước hết, giúp người ta
nhớ ngày giỗ của tổ tiên, ông bà, cha mẹ. Sau đó, là cho con cháu biết nguồn gốc gia
tộc từ đâu đến đâu, họ hàng trên dưới xa gần ra sao. Nhờ có gia phả mà con cháu
các đời sau mới hiểu được ngọn ngành, tông chỉ nhà mình.
Người xưa quan niệm: trong một nhà một họ mà gốc rễ không tường tận, thì
trong con cháu thường xảy ra những chuyện có hại cho gia đạo.
Gia phả không chỉ quan tâm đến nguồn gốc, giỗ Tết, mà nó còn chứa đựng
nhiều nghĩa lý sâu xa, khuyên răn việc thiện, việc nghĩa ở đời, nhờ vậy mà trong họ
giữ được tình hoà hiếu lâu dài. Gia đình là nơi thường ngày những người cùng
chung máu mủ quây quần sum họp. Nhưng trong phạm vi gia đình, sợi dây thân ái
đó chỉ có thể duy trì trong một giới hạn nhất định rồi tự nó sẽ phai nhạt dần khi
những người trong gia đình ấy bắt đầu phân tán ra nhiều ngành. Số người trong gia
đình càng đông thì con cháu không thể nào biết hết được dòng họ xa gần từ các đời
trước. Không những vậy, vào thời loạn lạc, chiến tranh, nhiều người trong họ phải
ly tán, loạn lạc. Giờ con cháu của họ không biết đến tổ tông, bà con, anh em.
Do đó, trước những vấn đề cấp thiết của một dòng họ, việc tạo trang Web gia
phả sẽ giúp con cháu nhớ hết tất cả mọi người đã sinh ra trước họ và đã chết trước
họ bao nhiêu đời. Bởi vậy, trang Web gia phả là sợi dây liên lạc vô hình nhưng hữu
hiệu nhất để cố kết nối tất cả con cháu của một dòng họ lại với nhau. Mối tương
quan này không những chỉ quan hệ đến con cháu ở hiện tại, mà còn quan hệ cả đến
tương lai nữa.
Viêc tạo trang Web phả hệ là thật sự hữu ích đối với những thành viên trong
dòng họ. Dù ở đâu, dù bất cứ khi nào. Mỗi một người trong dòng họ đều có thể biết
được những thay đổi, những thông tin mới nhất của dòng họ. Ngoài ra việc tạo trang
Web gia phả sẽ giúp những người xa quê hương, những người bị ly tán lâu đời tìm
lại gốc gác, tổ tiên của mình. Đi xa hơn, việc tạo trang web gia phả lưu tất cả thông
tin của dòng họ còn ảnh hưởng tới cả quốc gia, góp phần làm phong phú lịch sử
Trang 3
Xây dựng trang Web gia phả trên nền hệ quản trị nội dung Jomla
nước nhà, bởi lịch sử quốc gia chính là lịch sử của nhiều gia đình, dòng họ đúc kết
lại. Chính những nhân vật có tên tuổi lưu danh trong sử sách là nhờ vào gia phả của
gia đình, họ được lưu truyền tới các thế hệ mai sau.
1.2 ĐỐI TƯỢNG VÀ PHẠM VI ÁP DỤNG
1.2.1 Đối tượng nghiên cứu
Nghiên cứu “Gia phả dòng họ Nguyễn Khoa…”
Họ Nguyễn Khoa nguyên quán ở làng Trạm Bạc, tổng Văn Cú, huyện An
Dương, phủ Kim Môn, tỉnh Hải Dương (Bắc kỳ). Theo yêu cầu của Nguyễn Khoa
Minh, thượng thư Bộ Lễ, họ được ghi vào tháng 11 năm Minh Mạng thứ 10, 1829
vào Dinh Bộ (việc chính thứ trong việc hộ) của làng An Cựu, huyện Hương Trà
(nay là Hương Thủy) gần thành phố Huế, tỉnh Thừa Thiên.
Gia tộc hiện nay ở xóm gia lạc, xã Dương Nỗ, huyện Phú Vang, tỉnh Thừa Thiên.
1.2.2 Phạm vi áp dụng
Xây dựng một ứng dụng Web để quản lý và tra cứu gia phả, gồm phần chính:
- Các trang cập nhật thông tin của từng thành viên trong dòng họ.
+ Cập nhật thông tin cá nhân.
+ Cập nhật thông tin vợ.
+ Cập nhật thông tin con.
+ Cập nhật thông tin chức vị.
+ Cập nhập thông tin mộ táng.
- Các trang liệt kê thông tin của từng thành viên trong dòng họ.
+ Liệt kê thông tin cá nhân.
+ Liệt kê danh sách vợ.
+ Liệt kê danh sách các con.
+ Liệt kê chức vị.
+ Liệt kê mộ táng.
- Các trang thêm thông tin của từng thành viên trong dòng họ.
+ Thêm thông tin cá nhân.
+ Thêm thông tin vợ.
+ Thêm thông tin con.
+ Thêm thông tin chức vị.
Trang 4
Xây dựng trang Web gia phả trên nền hệ quản trị nội dung Jomla
+ Thêm thông tin mộ táng.
- Các trang xóa thông tin của từng thành viên trong dòng họ.
+ Xóa thông tin cá nhân.
+ Xóa thông tin vợ.
+ Xóa thông tin con.
- Xuất cây phả hệ theo thứ tự cấp bậc của dòng họ.
1.3 HƯỚNG TIẾP CẬN CỦA LUẬN VĂN
Để xây dựng trang Web thõa mãn những mục tiêu đề ra, tác giả luận văn
không chọn cách xây dựng trang Web từ đầu mà tận dụng những thư viện và công
cụ mã nguồn mở. Sau khi phân tích các yêu cầu và tính chất của hệ thống tác giả
luận văn nhận thấy có nhiều điểm tương đồng với các hệ quản trị nội dung (CMS)
mã nguồn mở miễn phí được sử dụng rất rộng rãi hiện nay. Bên cạnh đó tính chất
của trang web đơn giản, dữ liệu không phức tạp và không yêu cầu cao, khắt khe về
hệ thống nên luận văn chọn ngôn ngữ PHP để phát triển. Thêm vào đó với định
hướng tận dụng tối đa các công cụ sẵn có của các hệ thống này như là hệ thống
quản trị nội dung, các thư viện tương tác cơ sở dữ liệu, các phân hệ quản lý người
dùng, ngôn ngữ và cấu hình hệ thống, tác giả luận văn chọn hệ quản trị nội dung
Joomla được xây dựng trên ngôn ngữ PHP và cơ sở dữ liệu MySQL.
Với quan điểm xem dữ liệu của hệ thống gia phả như một loại nội dung được
quản lý và xuất bản tương tự như các loại nội dung đặc thù khác của hệ quản trị nội
dung, tác giả luận văn chọn cách tiếp cận xây dựng hệ thống quản lý thông tin về gia
phả như một component của Joomla để có được khả năng tích hợp với phần lõi về
quản lý nội dung sẵn có của joomla lẫn các phần mở rộng (extensions) thương mại
hoặc miễn phí đã và đang được phát triển rất nhiều bởi cộng đồng Joomla (với sự
đóng góp của 100.000 lập trình viên PHP và hệ quản trị nội dung). Với cách tiếp cận
này, trong phạm vi luận văn này component gia phả sẽ sử dụng các thư viện tương
tác cơ sở dữ liệu, công cụ template (template engine/tool), component người dùng,
các thư viện xử lý giao diện Javascript,… sẵn có của hệ nền Joomla. Hơn thế nữa
luận văn còn tham khảo mã nguồn của các component cơ sở của Joomla như
contents, contact, login,… để phỏng theo mô thức phát triển trong việc xây dựng
component giả phả. Điều này sẽ đem tới khả năng tích hợp và liêt kết nội dung,
Trang 5
Xây dựng trang Web gia phả trên nền hệ quản trị nội dung Jomla
thông tin của component giả phả với các component khác ví dụ như liên kết thông
tin trích lục của người dùng với các bản tin trong component content, liên kết thông
tin trích lục với thông tin người dùng trong component user và thông tin danh thiếp
trong component contact, hoặc sử dụng quy trình đăng tải tin trong component
content để xây dựng quy trình đăng tải các mục nội dung, thông tin của hệ thống gia
phả khi phát triển lên hệ thống quản trị phân tán.
Bên cạnh hướng chọn công nghệ và phương pháp thi công, luận văn còn chọn
phương pháp phân tích và thiết kế hệ thống theo phương thức hướng đối tượng dựa
vào Usecase. Luận văn sẽ xây dựng các Usecase cho hệ thống từ đặc tả bài toán
được phát biểu từ những nghiên cứu tổng hợp về nghiệp vụ biên soạn gia phả bằng
tay. Từ đó luận văn sẽ đưa ra biểu đồ các lớp sẽ xây dựng cho hệ thống và đi kèm là
các biểu đồ tuần tự và cộng tác để mô tả phương thức giải quyết, thực hiện các
trường hợp sử dụng được nêu ra trong tập các UseCase.
Trang 6
Xây dựng trang Web gia phả trên nền hệ quản trị nội dung Jomla
CHƯƠNG 2
TỔNG QUAN VỀ CÔNG NGHỆ WEB ĐỘNG PHP VÀ
HỆ QUẢN TRỊ NỘI DUNG JOOMLA
2.1. CÔNG NGHỆ WEB ĐỘNG
Ngày nay, các Web site tĩnh với các trang HTML đơn giản không còn đáp ứng
được nhu cầu của người dùng. Các Web site động kết hợp với cơ sở dữ liệu đã trở
nên xu thế phát triển Web.
Trang Web động là trang Web có kết nối cơ sở dữ liệu. Điều này có nghĩa là
khi trang Web động được làm tươi, dữ liệu trình bày trên trang Web được đọc từ
CSDL.
Để tạo một trang Web thì có nhiều cách lựa chọn, riêng đề tài của luận văn
này là tạo Web site động: ngôn ngữ kịch bản PHP và chương trình quản lý cơ sở dữ
liệu MySQL.
2.2. KIẾN TRÚC CƠ BẢN
Kiến trúc căn bản nhất để trang Web động hoạt động được là nó phải làm việc
trên mô hình client/server. Mỗi client hay server đều đảm đương một chức năng
riêng để hoàn thành công việc chung đó là cho ra một trang Web động. Ứng dụng
Web thì phải có một mô hình server có thể là một máy tính làm server, nhằm tập
trung hoá việc xử lý dữ liệu. Còn các client, là máy tính của người sử dụng phải
được nối mạng với server, khi các máy này truy cập vào một Website có nghĩa là nó
đã truy cập vào server, sau đó lấy dữ liệu từ server về thể hiện lên máy mình. Cùng
một lúc có thể có hàng trăm người (client) truy cập vào cùng một Website được xử
lý tập trung trên server.
Trang 7
Xây dựng trang Web gia phả trên nền hệ quản trị nội dung Jomla
Hình 2.1 Mô hình hoạt động giữa máy chủ Server và trình duyệt Browser
- Client
Các ứng dụng phát triển trên nền Web sử dụng tính năng single client là trình
duyệt Web. Ngôn ngữ được sử dụng để mô tả nội dung được hiển thị trên các trình
duyệt Web là HTML, mặc dù nó là ngôn ngữ chủ đạo nhưng không phải là duy
nhất.
- Server/ Web Server
Hầu hết các ứng dựng Web đều hoạt động tập trung trên Server. Một ứng dụng
đặc trưng gọi là Web Server đóng vai trò giao tiếp với các trình duyệt. Một cơ sở dữ
liệu (CSDL) trên Server sẽ lưu trữ tất cả những thông tin đáp ứng yêu cầu cho công
việc của ứng dụng Web. Và cần phải có một ngôn ngữ làm vai trò "liên lạc" giữa
Web Server và CSDL trên server. Ngôn ngữ này cũng thực hiện các công việc xử lý
thông tin đến và đi từ Web Server.
Chức năng của Web Server là ở tại chỗ, chạy trên nền của HĐH, chờ các yêu
cầu trên Web gởi đến, sau đó trả lời những yêu cầu này, và cấp phát những trang
Web thích ứng. Tuy nhiên trong thực tế thì chức năng của Web Server không đơn
giản như vậy, vì nhiệm vụ của Web Server là phải cung cấp tính ổn định cho môi
trường Web nên đòi hỏi này phải được đáp ứng một cách rất nghiêm túc. Có nhiều
loại Web Server khác nhau, nhưng luận văn này sử dụng Apache.
Trang 8
Xây dựng trang Web gia phả trên nền hệ quản trị nội dung Jomla
Apache là một kiểu mẫu Web Server rất phổ biến, nó là một dự án nguồn mở.
Luận văn này chọn Apache là Web Server bởi vì Apache không chỉ được hổ trợ rất
tốt trên môi trường Linux, Unix mà nó còn hoạt động khá ổn định trong môi trường
Microsoft Windows.
Apache tận dụng được tính năng của third-party. Bởi vì đây là nguồn mở nên
người dùng có thể viết chương trình mở rộng tính năng của Apache. PHP hoạt động
với tư cách là một phần mở rộng của Apache, được gọi là một module của Apache.
Apache có tính ổn định và tốc độ. Thực hiện các thay đổi đối với Apache bằng
cách sử dụng dòng lệnh, hoặc sử dụng các tập tin text trong folder của chương trình
Apache. Mặc dù Apache chỉ làm việc tốt trên Unix, nhưng cũng có những phiên bản
chạy tốt trên hệ Windows.
2.3 GIỚI THIỆU CÁC NGÔN NGỮ WEB ĐƯỢC SỬ DỤNG
2.3.1 Giới thiệu về HTML
HTML là viết tắt của Hyper Text Markup Language ( Ngôn ngữ đánh dấu siêu
văn bản). Một tài liệu HTML thường có đuôi mở rộng là .html hoặc .htm. Các trang
HTML nói riêng và các trang web nói chung (.php, .asp, ...) có tính chất của một
văn bản như các file .txt hay .doc nhưng nó phức tạp và đa dạng hơn.
HTML là hàng loạt các đoạn mã chuẩn với các qui ước được thiết kế để tạo các
trang Web và được hiển thị bởi những trình duyệt Web (Web Browser). HTML là
nền tảng của World Wide Web, một trông những dịch vụ hàng đầu.
Ngôn ngữ đánh dấu siêu văn bản được dùng trong dịch vụ Web của internet, cho
phép định nghĩa các khuôn dạng của thông tin và cách mà trình duyệt Web hiển thị
thông tin cho người dùng.
HTML sử dụng các khóa, được gọi là các thẽ (tag), để định dạng và định nghĩa
các đoạn văn bản trong một trang Web. Trình duyệt sẽ dịch các khoá này thành các
đoạn văn và hình ảnh của trang web. Tuy nhiên, thẽ HTML còn nhiều vai trò hơn
ngoài việc định dạng văn bản và hình ảnh.
Các trang Web HTML có thể đọc được bằng các trình duyệt Web (Web
Browse) khác nhau và phổ biến trên Internet Explorer(IE).
Ngôn ngữ HTML có ưu điểm là rất đơn giản và có thể chạy tốt với nhiều hệ
điều hành và nhiều trình duyệt Web khác nhau. Tuy mỗi trình duyệt do 1 hãng khác
Trang 9
Xây dựng trang Web gia phả trên nền hệ quản trị nội dung Jomla
nhau sản xuất và có 1 cách biên dịch trang Web khác nhau nhưng nói chung đều cho
một kết quả tương tự nhau. Ngoài ra HTML được sọan thảo rất đơn giản, không cần
chương trình chuyên dụng, chỉ cần notepad hoặc bất kỳ chương trình sọan thảo văn
bản nào.
2.3.2 Giới thiệu về JavaScript
2.3.2.1 Giới thiệu
Cùng thời điểm Netscape bắt đầu sử dụng công nghệ Java trên trình duyệt
Netscape, LiveScript đã được đổi tên thành JavaScript để được chú ý hơn bởi ngôn
ngữ lập trình Java lúc đó đang được coi là một hiện tượng. JavaScript được bổ sung
vào trình duyệt Netscape bắt đầu từ phiên bản 2.0b3 của trình duyệt này vào tháng
12 năm 1995. Trên thực tế, hai ngôn ngữ lập trình Java và JavaScript không có liên
quan gì đến nhau, ngoại trừ việc cú pháp của cả hai ngôn ngữ cùng được phát triển
dựa trên cú pháp của C. Java Script gồm 2 mảng là client-server thực hiện lệnh trên
máy của end-user và web-server.
2.3.2.2 Tính chất của JavaScript
- JavaScript là một ngôn ngữ tạo script
Các ngôn ngữ tạo script đã được sử dụng một thời gian dài trước khi Web xuất
hiện. Trong môi trường UNIX, script đã được sử dụng để thực hiện các tác vụ quản
lý hệ thống lặp đi lặp lại và để thực hiện tự động nhiều tác vụ cho những người dùng
ít thành thạo máy tính. Ngoài ra, ngôn ngữ tạo script là cơ sở của việc lập trình CGI
hiện vẫn được sử dụng để bổ sung tính tương tác hạn chế đối với các trang Web.
Những ví dụ về các ngôn ngữ tạo script bao gồm: Perl, nổi tiếng trong việc lập trình
CGI, Awk và SED (được thiết kế cho xử lý văn bản mở rộng), rồi HyperTalk là một
ngôn ngữ tạo script hướng đối tượng như JavaScript.
Giống như tất cả các ngôn ngữ tạo script, JavaScript được diễn dịch và điều này tạo
điều kiện cho việc nhanh chóng tìm lỗi dễ dàng; hơn thế, nó có một số lượng lệnh
hữu hạn và cú pháp dễ học. Ngoài ra, JavaScrip được thiết kế cho việc thực hiện
một tập hợp các tác vụ được xác định rõ ràng.
- Phù hợp cho các chương trình nhỏ và đơn giản
Do JavaScript là một ngôn ngữ tạo script, nó rất phù hợp cho việc thực hiện
các chương trình đơn giản và nhỏ. Chẳng hạn, JavaScript phù hợp cho việc xây
Trang 10
Xây dựng trang Web gia phả trên nền hệ quản trị nội dung Jomla
dựng một bảng chuyển đổi đơn vị giữa dặm và kilômét, hoặc giữa pound và
kilôgam. Những tác vụ này có thể được viết và thực hiện dễ dàng ở tốc độ có thể
chấp nhận với JavaScript và dễ dàng được tích hợp vào các trang Web. Một ngôn
ngữ cứng nhắc hơn như Java sẽ không mấy phù hợp cho việc phát triển nhanh và
bảo trì dễ dàng những kiểu trình ứng dụng này.
Ngược lại, JavaScript không phù hợp với việc cài đặt một môi trường xử lý và hiển
thị các tài liệu đồ họa phân tán. Mặc dù JavaScript cũng là một công cụ để tích hợp
các Java applet hay plug- in vào một trang Web nhưng việc thử phát triển applet
thực sự trong JavaScript sẽ rất khó khăn và không hiệu quả nếu không nói là không
thể được.
Dĩ nhiên, điều này không có nghĩa là các trình ứng dụng lớn không thể được
phát triển với JavaScript. Tuy nhiên, các ngôn ngữ tạo script được sử dụng cho các
tác vụ nhỏ hơn chứ không phải các chương trình được biên dịch đầy đủ.
- Thực hiện các tác vụ lặp đi lặp lại
JavaScript phù hợp với việc tạo các chương trình nhỏ, nó được thiết kế đặc biệt
phù hợp cho các tác vụ được lặp đi lặp lại. Ví dụ, JavaScript là lý tưởng cho việc
tính toán nội dung của một trường trong mẫu điền (form) dựa trên các thay đổi của
dữ liệu trong một trường khác. Mỗi khi dữ liệu thay đổi, chương trình JavaScript xử
lý sự kiện sẽ được gọi và dữ liệu mới trong các trường khác sẽ được tính toán và
hiển thị.
- Lập trình cho các sự kiện người dùng
Do cách thức JavaScript được tích hợp vào trình duyệt và tương tác trực tiếp
với trang HTML nên JavaScript có thể được sử dụng để lập trình đáp ứng các sự
kiện người dùng chẳng hạn như các thao tác nhấp chuột và nhập dữ liệu vào mẫu
điền.
Ví dụ, một script JavaScript có thể được sử dụng để thực hiện một hệ thống trợ giúp
đơn giản. Bất kỳ khi nào khi đưa con trỏ vào một nút lệnh hoặc một liên kết trên
trang Web thì một thông báo hướng dẫn và giúp đỡ có thể được hiển thị trên thanh
trạng thái ở phần dưới cùng của cửa sổ trình duyệt. Điều này bổ sung tính tương tác
vào các trang Web, làm cho các mẫu điền trở nên sinh động và có thể giảm những
Trang 11
Xây dựng trang Web gia phả trên nền hệ quản trị nội dung Jomla
yêu cầu về băng thông và tải trên máy chủ vốn bị gây ra bởi việc sử dụng các mẫu
điền và lập trình CGI.
- Gỡ lỗi và thử nghiệm dễ dàng
Giống như các ngôn ngữ tạo script, JavaScript làm cho quá trình phát triển và
xử lý sự cố trở nên dễ dàng do nó không cần phải biên dịch. Việc kiểm tra mã
chương trình, xem xét các kết quả, thực hiện các thay đổi và kiểm nghiệm lại mã
chương trình là rất thuận tiện mà không mất nhiều thao tác và thời gian chờ cho việc
biên dịch.
2.3.2.3. Ưu điểm của JavaScript
JavaScript cung cấp nhiều tính năng mạnh cho người lập trình, bao gồm một
chu kỳ phát triển ngắn gọn, các script kích cỡ nhỏ và dễ nghiên cứu. Những tính
năng mạnh này giúp JavaScript có thể dễ dàng và nhanh chóng được sử dụng để mở
rộng các trang HTML có sẵn trên Website.
- Phát triển nhanh
Do JavaScript không cần đến sự biên dịch chiếm nhiều thời gian nên các script
có thể được phát triển trong khoảng thời gian tương đối ngắn. Điều này được cải
tiến bởi việc hầu hết các tính năng giao diện, chẳng hạn như hộp thoại, mẫu điền và
các phần tử GUI khác đều được xử lý bởi trình duyệt và mã HTML. Những người
lập trình JavaScript không phải lo lắng về việc tạo hay xử lý những phần tử này
trong các trình ứng dụng của họ.
- Dễ học
Mặc dù JavaScript có thể có nhiều điểm tương tự Java nhưng nó không có
những cú pháp và quy tắc phức tạp của Java. Bằng cách học chỉ một vài lệnh và các
quy tắc về cú pháp đơn giản, kèm với việc tìm hiểu cách các đối tượng được sử
dụng trong JavaScript ta có thể bắt đầu tạo các chương trình tương đối phức tạp.
- Không phụ thuộc hệ điều hành
Do bản chất của World Wide Web là không phụ thuộc hệ điều hành nên các
chương trình JavaScript đã làm cho trình duyệt Netscape Navigator cũng không phụ
thuộc vào bất kỳ hệ điều hành nào.
- Kích cỡ chương trình nhỏ
Trang 12
Xây dựng trang Web gia phả trên nền hệ quản trị nội dung Jomla
Các chương trình JavaScript có kích cỡ khá nhỏ so với các applet nhị phân do
Java tạo nên. Điều này làm giảm thiểu các yêu cầu lưu trữ trên máy chủ và thời gian
tải cho người dùng. Ngoài ra, do các chương trình JavaScript thường được chứa
trong cùng một tệp như mã HTML của một trang Web nên chúng đòi hỏi ít hơn
những sự truy cập mạng riêng biệt.
2.3.2.4 Nhược điểm của JavaScript
JavaScript cũng có các khuyết điểm nhất định của nó. Những khuyết điểm này
bao gồm sự hạn chế của tập hợp các phương thức tạo sẵn, không có khả năng bảo vệ
các mã nguồn khỏi những tin tặc và thực tế JavaScript vẫn chưa phát triển hoàn
chỉnh vì chưa có môi trường gỡ lỗi.
- Phạm vi hạn chế của các phương thức tạo sẵn
Các phiên bản trước đây của trình duyệt Netscape Navigator chứa một phiên
bản còn hạn chế của JavaScript. Trong phiên bản cuối cùng của Navigator, số lượng
các phương thức tạo sẵn đã tăng đáng kể nhưng vẫn chưa hoàn chỉnh để làm việc
với các tài liệu và các cửa sổ máy khách.
- Không che giấu được mã
Do mã nguồn của script thuộc JavaScript được chứa như một phần của mã
nguồn HTML dành cho tài liệu nên không có cách gì để bảo vệ mã khỏi bị sao chép
và sử dụng lại bởi những người xem trang Web. Điều này tạo nên những quan tâm
trong công nghiệp phần mềm về sự bảo vệ sở hữu trí tuệ.
- Thiếu các công cụ gỡ lỗi và phát triển
Hầu hết các môi trường lập trình phát triển tốt đều cung cấp một tập hợp công
cụ làm cho việc phát triển dễ dàng và đơn giản hơn để tăng tốc quá trình gỡ lỗi.
2.3.3 Tích hợp JavaScript vào HTML
Các script và các chương trình JavaScript có thể được chứa ở bất cứ nơi nào,
trong phần tiêu đề và phần thân của tệp HTML.
Tuy nhiên, những nhà phát triển khác thích đặt chương trình JavaScript kế cận
phần tử hoặc phần HTML mà nó đề cập đến, chẳng hạn như một mẫu điền. Bởi vì
HTML có thể chứa nhiều thẻ SCRIPT nên việc đặt các hàm JavaScript vào các vị trí
đúng logic trong một tệp (để dễ dàng tạo mã và gỡ rối) là có thể được.
Trang 13
Xây dựng trang Web gia phả trên nền hệ quản trị nội dung Jomla
Việc chứa các script trong HTML rất đơn giản. Mỗi script được chứa trong thẻ
chứa SCRIPT. Nói cách khác, một thẻ < /SCRIPT > mở sẽ bắt đầu script này và một
thẻ < /SCRIPT > đóng sẽ kết thúc nó:
< SCRIPT > chương trình JavaScript < /SCRIPT >
Thẻ SCRIPT sẽ có hai thuộc tính tuỳ chọn xác định cách thức tích hợp script
JavaScript vào tệp HTML. Những thuộc tính này được trình bày trong bảng sau:
Thuộc tính
SRC
Mô tả
URL của tệp chứa mã nguồn JavaScript. Tệp này có tên mở rộng là
".js"
LANGUAGE Chỉ ra ngôn ngữ sử dụng trong script, có thể sử dụng hai giá trị:
JavaScript và LiveScript. Giá trị LiveScript chỉ để tương thích
ngược với các script được phát triển trước đây khi ngôn ngữ này
còn được gọi là LiveScript. Nên sử dụng giá trị JavaScript trong các
script
Tuy nhiên có những lý do bắt buộc đặt các đoạn mã JavaScript nào đó vào
phần tiêu đề của tệp HTML để đảm bảo chúng được xác định trước khi người dùng
có thể kích hoạt các sự kiện.
Việc chứa các chương trình JavaScript trực tiếp trong các tệp HTML có thể
thích hợp cho các script nhỏ và các trang HTML đơn giản. Tuy nhiên, đối với những
trang yêu cầu các script phức tạp thì chúng ta khó có thể kiểm soát được chúng.
Để việc phát triển và bảo trì các tệp HTML với các script JavaScript được dễ dàng
hơn, đặc tả JavaScript đề nghị giữ các script JavaScript trong các tệp riêng biệt và sử
dụng thuộc tính SRC của thẻ SCRIPT để gọi chương trình JavaScript vào trong tệp
HTML.
Đơn giản nhất, cấu trúc SRC có thể được sử dụng như sau:
< SCRIPT LANGUAGE = ’’JavaScript’’
SRC= ’’ chương trình JavaScript
< /SCRIPT >
Một trong những thuận lợi của phương pháp này là các script tự động được che
dấu khỏi các bộ trình duyệt khác vốn không hỗ trợ JavaScript. Tuy nhiên, kỹ thuật
Trang 14
Xây dựng trang Web gia phả trên nền hệ quản trị nội dung Jomla
này đòi hỏi thêm một yêu cầu và truy cập server, điều này có thể khó xử lý trên một
server chậm hoặc qua một nối kết Internet tốc độ thấp.
Ngoài ra, cả hai kỹ thuật (mã JavaScript trong tệp HTML và mã JavaScript
trong tệp riêng biệt) đều có thể được sử dụng đồng thời.
2.3.4 Giới thiệu về PHP
2.3.4.1. PHP là gì ?
PHP là một ngôn ngữ lập trình được kết nối chặt chẽ với máy chủ. Quá trình
xử lý PHP được thực hiện trên máy chủ ( Windowns hoặc Unix ). Khi một trang
Web muốn dùng PHP thì phải đáp ứng được tất cả các quá trình xử lý thông tin
trong trang Web đó, sau đó đưa ra kết quả như ngôn ngữ HTML.Vì quá trình xử lý
này diễn ra trên máy chủ nên trang Web được viết bằng PHP sẽ dễ nhìn hơn ở bất kì
hệ điều hành nào.
PHP là một ngôn ngữ lập trình kiểu script, chạy trên Server và trả về mã
HTML cho trình duyệt. PHP có thể nối trực tiếp với HTML. Mã PHP tách biệt với
HTML bằng các thực thể đầu và cuối và được đặt trong kiểu tag đặc biệt cho phép người sử dụng có thể
vào hoặc ra khỏi chế độ PHP.
Khi một tài liệu được đưa ra phân tích, quá trình xử lý PHP chỉ
được thực hiện ở những điểm quan trọng, rồi sau đó đưa ra kết quả.
Một file php có thể bao gồm text, thẻ HTML và các script (kịch bản).
File PHP có thể bao gồm các phần mở rộng ".php", ".php3", hoặc là ".phtml".
2.3.4.2 Tại sao chọn PHP ?
- PHP chạy trên nhiều nền khác nhau, như Windows, Linux ...
- PHP tương thích với hầu hết các server đang sử dụng hiện nay, như Apache,
IIS ….
- PHP xây dựng được nhiều tính năng để đáp ứng những nhu cầu chung nhất.
- PHP rất ổn định và tương hợp, mới đây PHP đã vận hành khá ổn định trên các
hệ điều hành gồm cả Unix, windown... Đồng thời nó cũng nối với một số máy chủ
như Apache hay IIS.
2.3.4.3 Lịch sử ra đời của PHP
PHP được giới thiệu năm 1994 như một bộ sư tập của một ngôn ngữ lập trình
chưa chặt chẽ và dựa vào Perl và các dụng cụ của trang chủ.
Trang 15
Xây dựng trang Web gia phả trên nền hệ quản trị nội dung Jomla
Tới năm 1998 việc công bố phiên bản 3 thì PHP mới chình thức phát triển theo
hướng tách riêng của mình, giống như C và Perl, PHP là một ngôn ngữ lập trình có
cấu trúc và tính năng đa dạng .Chính vì những điểm giống nhau này đã khuyến
khích các nhà thiết kế Web chuyên nghiệp chuyển qua sử dụng PHP .Với phiên bản
3 này PHP cũng cung cấp một số lượng cơ sở dữ liệu khá đồ sộ gồm cả MySQL,
mSQL, OPBC và Oracle . Nó cũng có thể làm việc với các hình ảnh các file dữ liệu,
FTP, XML và host của các kĩ thuật ứng dụng khác.
Đến nay PHP vẫn là một dịch vụ hàng đầu miễn phí. Tuy nhiên không giống
như một số ngôn ngữ khác càng ngày nó càng trở thành một xu hướng vì rất nhiều
các trang Web hiện nay được làm bằng PHP.
2.3.5 Giới thiệu về MYSQL
2.3.5.1 MySQL là gì ?
- MySQL là một CSDL server nhỏ.
- MySQL là một trong những lựa chọn cho các ứng dụng vừa và nhỏ.
- MySQL hỗ trợ SQL chuẩn.
- MySQL được biên dịch dựa trên nhiều nền khác nhau, như Linux, Windows..
- MySQL miễn phí trong download và sử dụng
2.3.5.2 Vì sao sử dụng MySQL ?
MySQL được sử dụng phổ biến. Nhưng MySQL có những hạn chế là có những
đặc điểm của những hệ quản trị CSDL khác mà MySQL không hỗ trợ.
Với những hạn chế đó đã làm cho MySQL không được chọn để chạy trên một
số các môi trường. Nhưng đối với phần lớn các ứng dụng, MySQL là sự chọn tốt
nhất bởi nó rất thích hợp cho việc phát triển những ứng dụng Web.
MySQL không có đầy đủ những cơ sở vật chất cho một Hệ Quản trị CSDL,
nhưng việc lưu trữ dữ liệu trên Web, thì MySQL có đầy đủ tính năng.
Đối với những CSDL cỡ trung bình thì MySQL hỗ trợ tuyệt vời về tốc độ.
2.4 GIỚI THIỆU VỀ HỆ QUẢN TRỊ NỘI DUNG (HQTND-CMS) JOMLA
CMS là một công cụ cho phép người dùng quản trị các nội dung thông tin của
một Website với giao diện thân thiện, dễ dàng sử dụng. Nó cung cấp cho người
dùng các khả năng để duy trì, thay đổi, cập nhật các nội dung của trang Web bao
gồm văn bản và hình ảnh với sự phân quyền chặt chẽ, linh hoạt thích hợp cho từng
Trang 16
Xây dựng trang Web gia phả trên nền hệ quản trị nội dung Jomla
mục đích sử dụng đơn giản hay phức tạp. CMS được thiết kế dành riêng cho hệ
thống dotnetnuke và được phân nhỏ thành nhiều module giúp cho việc chọn lựa nơi
hiển thị của từng phần nhỏ trong CMS được linh động hơn.
Các tính năng cơ bản:
- Đảm bảo tin tức và bài viết luôn mới, cập nhật liên tục với giao diện chuyên
nghiệp.
- Phân quyền chặt chẽ.
- Định hướng tin, bài viết vào một hoặc nhiều nhóm tin thích hợp.
- Thiết kế các thiết lập riêng cho từng module giúp việc hiển thị linh động, tùy
theo mục đích của người sử dung (cho phép hiển thị hình ảnh hoặc không, hiển thị
bao nhiêu tin, ...).
Joomla là một 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 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 giúp xây dựng một Website hoặc các ứng dụng online, Joomla là một
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 đượ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.Với Joomla, việc cập nhật các tin tức có thể được thực hiện nhanh chóng và
dễ dàng ngay cả đối với người chỉ biết dùng...Word! Đặc biệt, Joomla hoàn toàn
miễn phí, do đó có thể là một lựa chọn tốt khi cần phát triển một cổng tin tức, một
hệ thống Website mạnh mẽ và đáng tin cậy.
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à một 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 )
Trang 17
Xây dựng trang Web gia phả trên nền hệ quản trị nội dung Jomla
•
Thương mại điện tử
•
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à nhà thờ
•
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..
Sử dụng Joomla sẽ rất dễ dàng quản lý giao diện trang Web việc cập nhật, xuất
bản nội dung, hình ảnh; quản lý các gian hàng ảo, sản phẩm của công ty ...
Joomla rất đơn giản trong việc cài đặt, sử dụng và thiết kế giao diện, mà không cần
phải là một lập trình viên vẫn có thể làm việc dễ dàng với Joomla.
Sau khi cài đặt xong Joomla thì không cần phải có kiến thức chuyên môn sâu
mà vẫn có thể quản lý và sử dụng Joomla một cách dễ dàng trong việc cập nhật nội
dung, hình ảnh, chỉ cần có kiến thức căn bản về Microsoft Word là có thể làm việc
dễ dàng với Joomla.
Ngoài các vấn đề là mã nguồn mở miễn phí, khả năng bảo mật cao, dễ dàng sử
dụng, điều tuyệt vời khiến cho Joomla phát triển mạnh và được nhiều người yêu
thích là với Joomla việc xây dựng (lập trình) thêm các thành phần, module, các chức
năng cho nó là việc rất dễ dàng đối với các lập trình viên, do đó Joomla có rất nhiều
các chức năng mở rộng được viết bởi các nhà lập trình trên khắp thế giới, và hầu hết
tất cả các ứng dụng, thành phần này đều được chia sẻ miễn phí (tất cả đều có sẵn và
miễn phí). Sau đây là một vài ví dụ về các ứng dụng được viết thêm hoặc được tích
hợp cho Joomla .
•
Tạo các form linh hoạt, dễ dàng và tự động
•
Tạo các thư mục về thương mại.
•
Hệ thống quản lý tài liệu
•
Thư viện hình ảnh và âm thanh
•
Cửa hàng ảo trực tuyến
•
Diễn đàn thảo luận
•
Lịch làm việc
Trang 18
Xây dựng trang Web gia phả trên nền hệ quản trị nội dung Jomla
•
Tạo Blogging
•
Tin tức qua Email (Email newsletters)
•
Hệ thống quản lý banner
•
Và hàng ngàn các ứng dụng khác ...
Joomla cung cấp 1 nền tảng ứng dụng mạnh mẽ tạo điều kiện thuận lợi cho các
lập trình viên thiết kế ra các add-ons nhằm mở rộng sức mạnh của Joomla nhắm đáp
ứng tối đa nhu cầu của người sử dụng.
Sử dụng nền tảng của Joomla, các developer có thể xây dưng được:
•
Hệ thống thương mại điện tử tích hợp
•
Hệ thống kiểm soát hàng hoá
•
Công cụ báo cáo dữ liệu
•
Danh mục hàng hoá
•
Các thư mục kinh doanh phức tạp
•
Công tự hỗ trợ giao tiếp
•
Cầu nối ứng dụng
hoặc bất kỳ loại ứng dụng nào phù hợp nhu cầu của người sử dụng…
Trang 19
Xây dựng trang Web gia phả trên nền hệ quản trị nội dung Jomla
CHƯƠNG 3
NỘI DUNG VÀ KẾT QUẢ NGHIÊN CỨU
3.1 PHÁT BIỂU BÀI TOÁN
Gia phả được coi là hoàn chỉnh trước hết phải là một gia phả được ghi chép rõ
ràng, chữ nghĩa chân phương có ghi rõ tên người sao lục, biên soạn thuộc đời thứ
mấy, năm nào, triều vua nào, căn cứ vào bản nào, tên người tục biên qua các đời
cũng có cước chú rõ ràng. Đầu gia phả có lời tựa ghi được nguồn gốc xuất xứ của
thủy tổ có cứ liệu thành văn hay truyền ngôn .
Mở đầu là thuỷ tổ, lần lượt đến tiên tổ các đời, nối dòng đến lớp con cháu mới
sinh (xem hình 3.1). Đối với tiền nhân có các mục sau đây:
Tên: Gồm tên huý, tên tự, biệt hiệu, thụy hiệu và tên gọi thông thường theo tập
quán địa phương?
Thuộc đời thứ mấy?
Con trai thứ mấy của ông nào? Bà nào?
Ngày tháng năm sinh (có người còn ghi được cả giờ sinh).
Ngày, tháng, năm mất?
Thọ bao nhiêu tuổi?
Mộ táng tại đâu? (có người ghi được cả nguyên táng, cải táng, di táng tại đâu?
Vào tháng, năm nào?).
Học hành, thi cử, đỗ đạt, chức vụ, địa vị lúc sinh thời và truy phong sau khi
mất: Thi đỗ học vị gì? Khoa nào? Triều vua nào? Nhận chức vị gì? Năm nào? Được
ban khen và hưởng tước lộc gì? Sau khi mất được truy phong chức gì? Tước gì?.
Vợ: Chánh thất, kế thất, thứ thất... Họ tên, con gái thứ mấy của ông nào, bà
nào? Quê ở đâu? Các mục ngày, tháng, năm sinh; ngày, tháng, năm mất, tuổi thọ,
mộ, đều ghi từng người như trên. Nếu có thi đỗ hoặc có chức tước, địa vị, được ban
thưởng riêng thì ghi thêm.
Con: Ghi theo thứ tự năm sinh, nếu nhiều vợ thì ghi rõ con bà nào? Con gái thì
cước chú kỹ: Con gái thứ mấy, đã lấy chồng thì ghi tên họ chồng, năm sinh, con ông
bà nào, quê quán, đỗ đạt, chức tước? Sinh con mấy trai mấy gái, tên gì? (Con gái có
cước chú còn con trai không cần vì có mục riêng từng người thuộc đời sau).
Trang 20
Xây dựng trang Web gia phả trên nền hệ quản trị nội dung Jomla
Những gương sáng, những tính cách, hành trạng đặc biệt, hoặc những công
đức đối với làng xã, họ hàng, xóm giềng...
Ngoài những mục ghi trên, gia phả nhiều họ còn lưu lại nhiều sự tích đặc biệt
của các vị tiên tổ, những đôi câu đối, những áng văn hay, những bài thuốc gia
truyền...đó là những tài sản quý giá mà chúng ta để thất truyền, chưa biết khai thác.
Những nội dung ghi trên chỉ có tính chất gợi ý với các bậc huynh trưởng các
họ, đang chăm lo công việc phổ biến và tục biên gia phả dành cho con cháu đời sau.
Còn phần trên gia phả hoàn chỉnh hay sơ sài, các cụ còn giành lại cho ta được bao
nhiêu biết bấy nhiêu, ai dám sáng tác thêm? Tuy nhiên, nếu tìm được quốc sử, hoặc
trong gia phả, thần phả khác những tư liệu liên quan thì có thể cước chú kỹ, giúp đời
sau thêm sáng tỏ.
3.2 ĐẶC TẢ NGHIỆP VỤ
Vì thời gian thực hiện luận văn hạn hẹp nên tác giả của luận văn chỉ giới hạn
phần xây dựng ứng dụng dựa trên đặc tả với nội dung dữ liệu cơ bản như sau:
1.
Ghi Thuỷ Tổ của dòng họ.
Ghi phả hệ phát sinh từ Thuỷ Tổ cho đến các đời con cháu sau này, là
cách vẽ như một cây, từng gia đình là từng nhánh, từ gốc đến ngọn để dễ theo
dõi từng đời.
2.
Đối với tiền nhân có các mục sau đây:
o
Tên: Gồm tên tên thụy (là tên trong khai sinh), giới tính, biệt hiệu,
tình trạng hiện nay (còn sống, đã chết hay không rõ), ngày sinh. Thuộc đời thứ
mấy? Con trai thứ mấy của ai?
o
Ngày tháng năm sinh (mất), giờ (nếu nhớ). Mộ táng, cải táng, hung
táng, di táng tại đâu? Thời gian nào?
o
Các chức vị được nhận lúc sinh thời.
o
Vợ: chánh thất, kế thất, thứ thất ? Họ tên? Quê ở đâu? Ngày, tháng,
năm sinh? Tình trạng hiên nay? Ngày, tháng, năm mất ? Hưởng thọ ? Mộ táng.
o
Con: là con của bà nào (vì cha có thể có nhiều vợ), còn nếu không
rõ con của bà nào thì ghi là không rõ.
Trang 21