xây dựng website quản lý vật tư trường đại học bách khoa
Trang 1Em xin chân thành cảm ơn các thầy cô trong khoa Công nghệ thông tincũng như các thầy cô giảng dạy trong trường Đại Học Bách Khoa Đà Nẵng đãtruyền đạt những kiến thức quý báu cho em trong những năm học vừa qua.
Trong suốt thời gian thực hiện đề tài, em luôn nhận được sự hướng dẫn
và giúp đỡ tận tình của thầy giáo Nguyễn Tấn Khôi – khoa Công nghệ thông tin
- Trường Đại Học Bách Khoa Đà Nẵng Điều đó đã tiếp thêm nhiều kiến thức
hữu ích cho em xây dựng đề tài một cách đúng đắn nhất Lời đầu tiên em xin
gửi lời cảm ơn chân thành nhất đến thầy giáo Nguyễn Tấn Khôi, cảm ơn thầy vìnhững kiến thức rất thực tế mà thầy đã mang đến cho em
Tuy nhiên, trong quá trình thực hiện đề tài do thời gian hạn hẹp và khảnăng có hạn, kinh nghiệm còn non yếu nên chắc không thể tránh khỏi nhữngkhuyết điểm và sai sót Vì vậy, em rất mong nhận được sự giúp đỡ, chỉ bảothêm của thầy giáo bộ môn cùng các bạn để em có thể hoàn thành tốt hơn đề tàinày
Đà Nẵng, ngày 17 tháng 01 năm 2014 Sinh viên thực hiện
Trang 2
MỤC LỤC
MỞ ĐẦU 4
CHƯƠNG 1 : CƠ SỞ LÝ THUYẾT 6
1.1 Giơí thiệu về PHP 6
1.2 Lịch sử phát triển của PHP 6
1.2.1 PHP/FI 6
1.2.2 PHP 3 6
1.2.3 PHP 4 7
1.2.4 PHP 5 7
1.2.5 PHP 6 8
1.3 Giới thiệu về HTML 5 8
1.4 Chức năng của HTML 5 9
CHƯƠNG 2 : PHÂN TÍCH VÀ THIẾT KẾ BÀI TOÁN 12
2.1 Khảo sát hệ thống 12
2.1.1 Mô tả hiện trạng 12
2.2 Chức năng của website 13
2.2.1 Người quản trị 13
2.2.2 Đối tượng người sử dụng 13
2.2.3 Môi trường hoạt động 13
2.3 Yêu cầu giao diện 13
2.3.1 Giao diện người dùng 13
2.3.2 Giao diện truyền thông 13
2.4 Chức năng của hệ thống 14
2.4.1 Sơ đồ Use Case 14
2.4.2 Sơ đồ Use Case Quản Lý Kho 15
2.4.3 Sơ đồ Use Case Quản lý chung 15
2.5 Đặc tả từng Use-Case 16
2.5.1 Use-case Đăng nhập 16
2.5.2 Use-case Tài sản thiết bị 16
2.5.3 Use-case Nhập thiết bị 16
2.5.4 Use-case Giao cho bộ môn 17
2.5.5 Use-carse Chuyển trả khoa 17
2.5.6 Use-case Đổi mật khẩu 17
2.5.7 Use-case Xuất thiết bị 18
2.5.8 Use-case Hồ sơ thiết bị 18
2.5.9 Use-case Chuyển giao quản lý 18
2.6 Sơ đồ tuần tự 19
2.6.1 Sơ đồ tuần tự use-case Nhập thiết bị 19
2.6.2 Sơ đồ tuần tự use-case Chuyển trả khoa 19
CHƯƠNG 3: THIẾT KẾ CƠ SỞ DỮ LIỆU 20
3.1 Mô tả dữ liệu 20
3.1.1 Tài sản thiết bị 20
3.1.2 Tài khoản người dùng 20
Trang 33.1.3 Nhập thiết bị 20
3.1.4 Giao cho bộ môn 20
3.1.5 Chuyển trả khoa 20
3.1.6 Xuất thiết bị 20
3.1.7 Hồ sơ thiết bị 20
3.1.8 Chuyển giao quản lý 20
3.2 Mô tả các bảng 20
3.2.1 TAI KHOAN 20
3.2.2 TAISANTHIETBI 21
3.2.3 NHAPTHIETBI 21
3.2.4 GIAOBOMON 21
3.2.5 TRAKHOA 22
3.2.6 XUATTHIETBI 22
3.2.7 HOSOTHIETBI 22
3.2.8 CHUYENGIAOQL 23
3.3 Mô hình quan hệ (Relationships) 23
CHƯƠNG 4:THIẾT KẾ XÂY DỰNG WEBSITE 24
4.1 Demo chương trình 24
4.1.1 Giao diện nhập thiết bị 24
4.1.2 Giao diện xuất thiết bị 24
4.1.3 Mẫu khi xuất thiết bị 25
KẾT LUẬN 26
Trang 4MỞ ĐẦU
I Lý Do Chọn Đề Tài
Ngày nay với sự phát triển như vũ bão của công nghệ thông tin, mọi ngành nghề,lĩnh vực đều có sự góp mặt của nó Bởi công nghệ thông tin là một công cụ hỗ trợ đắclực, có khả năng làm cho hệ thống quản lý trở nên đơn giản và sử dụng đạt hiệu quảcao hơn nhiều
Với sự phát triển mạnh mẽ của khoa học công nghệ và việc ứng dụng công nghệthông tin ngày càng rộng rãi Bất kì một cơ quan, tổ chức, đơn vị, doanh nghiệp,trường học, … cũng đều trang bị cho mình một hệ thống máy tính hiện đại với cácphần mềm quản lý chuyên nghiệp để hổ trợ nghiệp vụ chuyên môn, đáp ứng nhu cầuquản lý thông tin dữ liệu nhanh chóng - chính xác và phục vụ có hiệu quả trong côngviệc
Mục tiêu cơ bản của dự án là tạo được một hệ thống thông tin thống nhất phục vụđiều hành và quản lý, chúng tôi chọn hướng phát triển website quản lý vật tư nhằm:
1 Tổ chức quản lý, lưu trữ trên hệ thống máy vi tính làm tăng tính an toàn
2 Bộ máy quản lý nhân sự gọn nhẹ, chỉ cần số ít nhân viên với hệ thống máy vitính
3 Chi phí đào tạo sử dụng không tốn kém
4 Tổ chức quản lý, phù hợp với các ứng dụng triển khai trên diện rộng
5 Bảo trì, phát triển hệ thống, phát triển ứng dụng và tích hợp với các ứng dụngkhác một cách dễ dàng nhanh chóng Nên việc mở rộng ít tốn kém nhất
II Mục Tiêu Của Đề Tài
Xây dựng website với quy mô vừa, quản lý tốt
Hệ thống dữ liệu đảm bảo việc nhập dữ liệu, quản lý, tra cứu nhanh chóng, thuậntiện
Chương trình linh hoạt, năng động hơn và đáp ứng được yêu cầu ngày càng caotrong công tác quản lý
Trang 5III Đối Tượng Nghiên Cứu
Toàn bộ công tác quản lý vật tư của trường ĐHBK, các thành phần tin học liên quan đến công tác quản lý bao gồm: hệ quản trị cơ sở dữ liệu, phân tích thiết kế hệ thống, ngôn ngữ lập trình PHP
IV Phương Pháp Thực Hiện
Khảo sát hệ thống website đang tồn tại, tiến hành phân tích các chức năng củawebsite cần xây dựng
Thực hiện tham khảo ý kiến của giáo viên để bổ sung các chức năng cần thiết.Tổng hợp các thông tin đã khảo sát, tiến hành phân tích và thiết kế hệ thống, thựchiện triển khai trên môi trường cục bộ
Trang 6CHƯƠNG 1 : CƠ SỞ LÝ THUYẾT
1.1 Giơí thiệu về PHP
PHP (viết tắt hồi quy "PHP: Hypertext Preprocessor") là một ngôn ngữ lập
trình kịch bản hay một loại mã lệnh chủ yếu được dùng để phát triển các ứng dụngviết cho máy chủ, mã nguồn mở, dùng cho mục đích tổng quát Nó rất thích hợpvới web và có thể dễ dàng nhúng vào trang HTML Do được tối ưu hóa cho cácứng dụng web, tốc độ nhanh, nhỏ gọn, cú pháp giống C và Java, dễ học và thờigian xây dựng sản phẩm tương đối ngắn hơn so với các ngôn ngữ khác nên PHP đãnhanh chóng trở thành một ngôn ngữ lập trình web phổ biến nhất thế giới
1.2 Lịch sử phát triển của PHP
1.2.1 PHP/FI
PHP/FI, viết tắt từ "Personal Home Page/Forms Interpreter", bao gồm một sốcác chức năng cơ bản cho PHP như ta đã biết đến chúng ngày nay Nó có các biếnkiểu như Perl, thông dịch tự động các biến của form và cú pháp HTML nhúng Cúpháp này giống như của Perl, mặc dù hạn chế hơn nhiều, đơn giản và có phần thiếunhất quán
Vào năm 1997, PHP/FI 2.0, lần viết lại thứ hai của phiên bản C, đã thu hútđược hàng ngàn người sử dụng trên toàn thế giới với xấp xỉ 50.000 tên miền đãđược ghi nhận là có cài đặt nó, chiếm khoảng 1% số tên miền có trên mạngInternet Tuy đã có tới hàng nghìn người tham gia đóng góp vào việc tu chỉnh mãnguồn của dự án này thì vào thời đó nó vẫn chủ yếu chỉ là dự án của một người
1.2.2 PHP 3
PHP 3.0 là phiên bản đầu tiên cho chúng ta thấy một hình ảnh gần gũi với cácphiên bản PHP mà chúng ta được biết ngày nay Nó đã được Andi Gutmans vàZeev Suraski tạo ra năm 1997 sau khi viết lại hoàn toàn bộ mã nguồn trước đó Lý
do chính mà họ đã tạo ra phiên bản này là do họ nhận thấy PHP/FI 2.0 hết sức yếukém trong việc phát triển các ứng dụng thương mại điện tử mà họ đang xúc tiếntrong một dự án của trường đại học Trong một nỗ lực hợp tác và bắt đầu xây dựngdựa trên cơ sở người dùng đã có của PHP/FI, Andi, Rasmus và Zeev đã quyết địnhhợp tác và công bố PHP 3.0 như là phiên bản thế hệ kế tiếp của PHP/FI 2.0, vàchấm dứt phát triển PHP/FI 2.0
Trang 71.2.3 PHP 4
Vào mùa đông năm 1998, ngay sau khi PHP 3.0 chính thức được công
bố, Andi Gutmans và Zeev Suraski đã bắt đầu bắt tay vào việc viết lại phần lõicủa PHP Mục đích thiết kế là nhằm cải tiến tốc độ xử lý các ứng dụng phứctạp, và cải tiến tính mô đun của cơ sở mã PHP Những ứng dụng như vậy đãchạy được trên PHP 3.0 dựa trên các tính năng mới và sự hỗ trợ khá nhiều các
cơ sở dữ liệu và API của bên thứ ba, nhưng PHP 3.0 đã không được thiết kế để
xử lý các ứng dụng phức tạp như thế này một cách có hiệu quả
Một động cơ mới, có tên 'Zend Engine' (ghép từ các chữ đầu trong têncủa Zeev và Andi), đã đáp ứng được các nhu cầu thiết kế này một cách thànhcông, và lần đầu tiên được giới thiệu vào giữa năm 1999 PHP 4.0, dựa trênđộng cơ này, và đi kèm với hàng loạt các tính năng mới bổ sung, đã chính thứcđược công bố vào tháng 5 năm 2000, gần 2 năm sau khi bản PHP 3.0 ra đời.Ngoài tốc độ xử lý được cải thiện rất nhiều, PHP 4.0 đem đến các tính năng chủyếu khác gồm có sự hỗ trợ nhiều máy chủ Web hơn, hỗ trợ phiên làm việcHTTP, tạo bộ đệm thông tin đầu ra, nhiều cách xử lý thông tin người sử dụngnhập vào bảo mật hơn và cung cấp một vài các cấu trúc ngôn ngữ mới
Với PHP 4, số nhà phát triển dùng PHP đã lên đến hàng trăm nghìn vàhàng triệu site đã công bố cài đặt PHP, chiếm khoảng 20% số tên miền trênmạng Internet
Nhóm phát triển PHP cũng đã lên tới con số hàng nghìn người và nhiềunghìn người khác tham gia vào các dự án có liên quan đến PHP như PEAR,PECL và tài liệu kĩ thuật cho PHP
1.2.4 PHP 5
Sự thành công hết sức to lớn của PHP 4.0 đã không làm cho nhóm pháttriển PHP tự mãn Cộng đồng PHP đã nhanh chóng giúp họ nhận ra những yếukém của PHP 4 đặc biệt với khả năng hỗ trợ lập trình hướng đối tượng (OOP),
xử lý XML, không hỗ trợ giao thức máy khách mới của MySQL 4.1 và 5.0, hỗtrợ dịch vụ web yếu Những điểm này chính là mục đích để Zeev và Andi viếtZend Engine 2.0, lõi của PHP 5.0 Một thảo luận trên Slashdot đã cho thấy việcphát triển PHP 5.0 có thể đã bắt đầu vào thời điểm tháng 12 năm 2002 nhưng
Trang 8những bài phỏng vấn Zeev liên quan đến phiên bản này thì đã có mặt trên mạngInternet vào khoảng tháng 7 năm 2002 Ngày 29 tháng 6 năm 2003, PHP 5 Beta
1 đã chính thức được công bố để cộng đồng kiểm nghiệm Đó cũng là phiên bảnđầu tiên của Zend Engine 2.0 Phiên bản Beta 2 sau đó đã ra mắt vào tháng 10năm 2003 với sự xuất hiện của hai tính năng rất được chờ đợi: Iterators,Reflection nhưng namespaces một tính năng gây tranh cãi khác đã bị loại khỏi
mã nguồn Ngày 21 tháng 12 năm 2003: PHP 5 Beta 3 đã được công bố đểkiểm tra với việc phân phối kèm với Tidy, bỏ hỗ trợ Windows 95, khả năng gọicác hàm PHP bên trong XSLT, sửa chữa nhiều lỗi và thêm khá nhiều hàm mới.PHP 5 bản chính thức đã ra mắt ngày 13 tháng 7 năm 2004 sau một chuỗi khádài các bản kiểm tra thử bao gồm Beta 4, RC 1, RC2, RC3 Mặc dù coi đây làphiên bản sản xuất đầu tiên nhưng PHP 5.0 vẫn còn một số lỗi trong đó đáng kể
là lỗi xác thực HTTP
Ngày 14 tháng 7 năm 2005, PHP 5.1 Beta 3 được PHP Team công bốđánh dấu sự chín muồi mới của PHP với sự có mặt của PDO, một nỗ lực trongviệc tạo ra một hệ thống API nhất quán trong việc truy cập cơ sở dữ liệu vàthực hiện các câu truy vấn Ngoài ra, trong PHP 5.1, các nhà phát triển PHP tiếptục có những cải tiến trong nhân Zend Engine 2, nâng cấp mô đun PCRE lênbản PCRE 5.0 cùng những tính năng và cải tiến mới trong SOAP, streams vàSPL
1.2.5 PHP 6
Hiện nay phiên bản tiếp theo của PHP đang được phát triển, PHP 6 bản sửdùng thử đã có thể được download tại địa chỉ http://snaps.php.net Phiên bảnPHP 6 được kỳ vọng sẽ lấp đầy những khiếm khuyết của PHP ở phiên bản hiệntại, ví dụ: hỗ trợ namespace (hiện tại các nhà phát triển vẫn chưa công bố rõràng về vấn đề này); hỗ trợ Unicode; sử dụng PDO làm API chuẩn cho việctruy cập cơ sở dữ liệu, các API cũ sẽ bị đưa ra thành thư viện PECL
1.3 Giới thiệu về HTML 5
HTML5 là một ngôn ngữ được thiết kế để thiết lập nội dung web Nó nhằm làmcho việc thiết kế và phát triển web dễ dàng hơn bằng cách tạo một giao diện ngônngữ đánh dấu chuẩn hóa và trực quan HTML5 cung cấp các phương tiện phân tích
Trang 9và phân định các trang của bạn, và nó cho phép bạn tạo các thành phần rời rạckhông chỉ được thiết kế để cấu tạo trang web một cách hợp lý mà còn được tạo ra
để cung cấp cho trang web các khả năng thông tin HTML5 có thể được gọi là
"cách tiếp cận thông tin thông qua thiết kế" do nó kết hợp yếu tố cơ bản về lập bản
đồ thông tin, phân chia và ghi nhãn thông tin giúp dễ dàng sử dụng và hiểu thôngtin Đây là nền tảng của tiện ích ngữ nghĩa và thẩm mỹ gây ấn tượng sâu sắc củaHTML5 HTML5 cung cấp khả năng xuất bản tất cả mọi thứ trên thế giới từ nộidung văn bản đơn giản đến đa phương tiện phong phú, tương tác cho các nhà thiết
kế và các nhà phát triển ở mọi trình độ
HTML5 cung cấp các công cụ quản lý dữ liệu, đồ họa, video, và âm thanh cóhiệu quả Nó tạo điều kiện cho sự phát triển của các ứng dụng giữa các trình duyệtvới nhau cho trang web cũng như cho các thiết bị di động HTML5 là một trongnhững công nghệ thúc đẩy những cải tiến trong các dịch vụ điện toán đám mây diđộng, vì nó tính đến tính linh hoạt rộng hơn, cho phép phát triển các trang web thú
vị và có khả năng tương tác Nó cũng đưa vào thẻ và các cải tiến mới, bao gồm cấutrúc thu nhỏ, các nút điều khiển của biểu mẫu, các API, đa phương tiện, hỗ trợ cơ
sở dữ liệu, và tốc độ xử lý nhanh hơn đáng kể
Các thẻ mới trong HTML5 có tính hấp dẫn cao, bao gồm cả vai trò và cách sửdụng của chúng Các phiên bản trước của HTML thường dùng các thẻ không có gìnổi bật cả Tuy nhiên, HTML5 có các nhãn trực quan, có khả năng mô tả cao Nócung cấp các nhãn nội dung phong phú ngay lập tức xác định nội dung Ví dụ, thẻ
<div> đã được bổ sung bằng các thẻ <section> và <article> Ngoài ra các thẻ
<video>, <audio>, <canvas>, và <figure> cũng đưa ra sự mô tả chính xác hơn vềcác kiểu nội dung cụ thể
1.4 Chức năng của HTML 5
nền
Trang 10 Giao diện WebSocket để thiết lập kết nối liên tục giữa các ứng dụng cưtrú và máy chủ
nghĩa là HTML5 có thể được định hướng nội dung
khách
plug-in của bên thứ ba
vị của máy điện thoại thông minh để kết hợp các dịch vụ và các ứngdụng đám mây di động
phép truyền thông hiệu quả hơn giữa các thiết bị di động và các máy chủđiện toán đám mây
HTML5 tạo ra sự trải nghiệm người dùng hấp dẫn hơn: Các trang đượcthiết kế bằng HTML5 có thể cung cấp một trải nghiệm giống như với các ứngdụng của máy tính để bàn HTML5 cũng cung cấp phát triển nhiều nền tảngnâng cao bằng cách kết hợp khả năng của các API với sự có mặt ở khắp mọi nơicủa trình duyệt Khi sử dụng HTML5, các nhà phát triển có thể cung cấp mộttrải nghiệm ứng dụng hiện đại, trôi chảy qua các nền tảng
Khi bạn nói HTML5, bạn đang sử dụng phép tốc ký cho sự đổi mới liêntục Các thẻ mới, các phương thức mới, và một framework phát triển chung dựatrên sự tác động lẫn nhau của HTML5 và hai đối tác của nó, CSS3 vàJavaScript Đây là cốt lõi của hiện tượng xử lý ứng dụng lấy máy khách làmtrung tâm Ngoài các việc triển khai các kỹ thuật và các phương thức của côngnghệ HTML5 cho máy tính để bàn, có thể triển khai thực hiện HTML5 trongnhiều trình duyệt điện thoại di động web có tính năng phong phú một thị trườngđang phát triển, khi đã chứng kiến sự phổ biến của các hệ điều hành web AppleiPhone, Google Android, và các điện thoại chạy Palm
Trang 11Một khía cạnh quan trọng về sức mạnh của HTML5 là lập bản đồ thông tinhoặc chặn nội dung, nếu bạn thích tạo ra một quá trình dễ hiểu hơn nhiều Bạn
có thể thấy công cụ này thích hợp cho việc thiết kế và phát triển hiệu quả nhưthế nào nhờ ưu thế ngày càng tăng của nó trong thế giới xử lý web
HTML5 báo hiệu sự ra đời của một quá trình ngữ nghĩa có hiệu quả hơn ởmức văn bản và kiểm soát tốt hơn qua việc xây dựng và sử dụng các biểu mẫu.Tất cả những đặc điểm này và nhiều điểm tốt đẹp khác nữa trong sự đổi mớiHTML5 là cơ sở cho sự thống trị ngày càng tăng của mô hình này Nhiều thựcthể cơ quan, thương mại và các tổ chức khác nữa — thậm chí nhiều tổ chứctrong số đó hầu như liên quan rất ít đến việc xử lý thông tin và truyền thôngnhư là hoạt động cơ quan chính của họ — theo mức độ này hay mức khác bịtràn ngập bởi sự phát triển của hiện tượng đang phát triển này
HTML5 không phải là cây đèn thần, và cũng không có gì là thần thánh cả.Tuy nhiên, các tài sản kỹ thuật và phương pháp luận của nó đã biến nó trở thànhmột thứ tuyệt vời khi bạn muốn tiếp cận
Trang 12CHƯƠNG 2 : PHÂN TÍCH VÀ THIẾT KẾ BÀI TOÁN
2.1 Khảo sát hệ thống
Khoa là nơi chịu trách nhiệm cung cấp các thiết bị để phục vụ công tác, phục
vụ thí nghiệm, thực hành, thực tập của sinh viên khoa mình cũng như các đơn vịhay khoa khác theo các quy định, sắp xếp của nhà trường Với tính chất là pháttriển rất nhanh với sự phát triển của khoa học công nghệ, chính vì lẽ đó mà để bắtkịp sự phát triển của công nghệ thì hàng năm khoa các thiết bị của khoa cũng luônluôn được mua mới để đáp ứng nhu cầu thực hành, tìm tòi của sinh viên
Các thiết bị này sau có thời gian sử dụng lâu dài, có thể do mua hoặc do đượccung cấp, tài trợ…Thiết bị nhập về được lưu ở kho của trường, sau đó đượcphòng hành chính tổng hợp chuyển giao về từng khoa Các khoa dựa theo tình hìnhthực tế của mình sẽ phân các thiết bị này về các bộ môn tương ứng
Các thiết bị trong quá trình sử dụng có thể được chuyển đổi lẫn nhau giữa các
bộ môn trong khoa Thiết bị nếu hỏng hóc hay cần thanh lý sẽ được chuyển trả vềphòng hành chính tổng hợp
Trong phạm vi của bài tập xét tất cả các thiết bị đã được giao về khoa, xét đếnquá trình nhập thiết bị về trường hay lưu kho của phòng hành chính tổng hợp
2.1.1 Mô tả hiện trạng
Hệ thống website quản lý vật tư sẽ được cài đặt, hoạt động tại máy tính ởvăn phòng khoa và được vận hành bởi nhân viên của khoa và phòng hành chínhtổng hợp
Quản trị hệ thống: phân chia những cấp độ người dùng khác nhau,từng người sử dụng ở các chức vụ khác nhau sẽ có các tác vụ khác nhau,
có thể quản lý được các thiết bị hiện tại đang có ở từng bộ môn, thiết bị
ở trong kho( tình trạng, số lượng…) Nhập xuất thiết bị từ phòng hành chính tổ hợp về khoa và về các bộ
và ngược lại Theo dõi được hồ sơ thiết bị, kiếm tra đánh giá được tình trạng thiết
bị
Trang 13Có khả năng chuyển giao các thiết bị giữa các bộ môn trong khoa.
2.2 Chức năng của website
2.2.2 Đối tượng người sử dụng
2.2.3 Môi trường hoạt động
2.3 Yêu cầu giao diện
2.3.1 Giao diện người dùng
Tương tác qua màn hình máy tính với trình duyệt web giúp người dùnglựa chọn được các tính năng và mục đích mong muốn
Giao diện phần mềm
Sử dụng hệ điều hành Windows
Hệ thống phải được cài đặt ít nhất 1 trình duyệt web
2.3.2 Giao diện truyền thông
Yêu cầu dễ sử dụng , có tính tương tác nhanh Người dùng sử dụng chuột
và bàn phím để tương tác với chương trình