Chuỗi sự kiện chính
1. Hệ thống hiển thị form Thành viên upload tài liệu, yêu cầu nhập các thông tin chi tiết về tài liệu như: tên tài liệu, chuyên đề, kích thước (tính bằng Kbyte), số trang, nguồn, nhà xuất bản, tác giả, theo yêu cầu, tóm tắt về tài liệu, mã xác nhận, chọn chức năng upload / uplink
2. Nếu chọn upload, chọn đường dẫn đến file tài liệu ( với định dạng được hỗ trợ cho phép upload là các kiểu file thuộc: pdf, doc, rar, zip, xls, ppt, prc, chm, txt), chọn đường dẫn đến file ảnh minh họa về tài liệu ( với định dạng cho phép là: gif, jpg, png)
3. Nếu chọn uplink, nhập link của tài liệu, link của ảnh minh họa về tài liệu
4. Hệ thống kiểm tra nếu thông tin hợp lệ xuất thông báo thông tin hợp lệ và click vào nút Upload để thực hiện
5. Nếu là Admin, Mod thực hiện Upload tài liệu thì tài liệu sẽ được đưa vào bảng ebooks , nếu là User thực hiện Upload thì tài liệu sẽ được đưa vào bảng ebookup
Trở lại trang Upload để tiếp tục Upload tài liệu khác.
58 trang |
Chia sẻ: netpro | Lượt xem: 4225 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Đồ án Xây dựng website chia sẻ tài liệu, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
CHƯƠNG I: MỞ ĐẦU
1.1 ĐẶT VẤN ĐỀ
Khoa học công nghệ ngày nay đang phát triển như vũ bão, xâm nhập và làm cải thiện đáng kể tới sự thay đổi tiến bộ của xã hội trong tất cả các lĩnh vực của đời sống. Đặc biệt là công nghệ thông tin, internet với sự bùng nổ thông tin. Tất cả thông tin luôn luôn được cập nhật thay đổi liên tục và đầy đủ một cách nhanh nhất thông qua mạng truyền thông và internet, mà phổ biến là thông qua các trang website.
Hiện nay nhu cầu tìm kiếm thông tin là rất cần thiết nhất là với học sinh, sinh viên về các kiến thức về xã hội, chính trị, văn hóa, công nghệ, kỹ thuật...Mà các tài liệu, giáo khoa, giáo trình còn đang khó khăn với các học sinh, sinh viên.
Nhằm đáp ứng nhu cầu đó, mà các website phục vụ cho việc trao đổi tài liệu, hỏi đáp thắc mắc, trao đổi kiến thức trên internet trở nên thiết thực và phổ biến. Dựa trên những lý do đó em thực hiện đồ án tốt nghiệp của mình với đề tài “Xây dựng website chia sẻ tài liệu” để nghiên cứu và có thêm kiến thức về lĩnh vực xây dựng website cho bản thân, giúp ích cho quá trình học tập và làm việc.
1.2 Ý TƯỞNG XÂY DỰNG WEBSITE
Với mục đích để mọi người có thể truy cập vào và tìm kiếm cho mình những thông tin, tài liệu, chia sẻ upload tài liệu lên cho những thành viên khác cùng học tập và trao đổi kiến thức, tạo thành một sân chơi có ích cho các học sinh, sinh viên những người đang tìm tòi tài liệu về các lĩnh vực trong cuộc sống.
Chức năng chính của Website
Chức năng của thành viên cấp 1 (thuộc nhóm: user)
+ Đăng nhập
+ Tìm kiếm ( tìm theo mục, tìm theo tên sách)
+ Download tài liệu
+ Upload tài liệu vào bảng (tài liệu user)
+ Quên mật khẩu ( khi quên mật khẩu, sử dụng câu hỏi bí mật)
+ Thay đổi thông tin tài khoản user
+ Thay đổi mật khẩu đăng nhập
+ Gửi ý kiến đóng góp tới ban quản trị web
+ Yêu cầu tài liệu
+ Viết lời bình với từng tài liệu
+ Đọc và gửi tin nhắn tới các user khác
+ Danh bạ: (từ chối tin nhắn, xem thông tin, gửi tin....)
+ Chat Room ( trao đổi, nói chuyện trực tiếp giữa các thành viên)
Quyền của Thành viên cấp 2 ( thuộc nhóm: Mod)
+ Đọc, Trả lời ý kiến đóng góp của user
+ Kiểm tra những tài liệu mới yêu cầu
+ Kiểm tra những tài liệu user mới upload
. xem, sửa chi tiết về tài liệu( tên sách, chuyên đề, kích thước, số trang, nguồn sách, tác giả, tóm tắt nội dung,..)
. Nếu nội dung đảm bảo: chuyển tài liệu vào bảng tài liệu
. Nếu nội dung không đảm bảo: xóa tài liệu, gửi tin nhắn khuyến cáo đến hộp tin nhắn của user đã upload tài liệu đó, cập nhật số lần khuyến cáo tới user đó. Nếu số lần khuyến cáo vượt quá quy định tự động hủy chức năng upload đối với thành viên đó.)
+ Upload tài liệu trực tiếp vào bảng tài liệu
+ Xóa tài liệu
+ Sửa tài liệu
+ Xóa bình luận về từng tài liệu
Quyền của Quản trị (Admin)
Quản lý chung:
+ Bật / tắt chức năng đăng ký thành viên mới
+ Bật / tăt chức năng upload, uplink
+ Bật / tăt chức năng Gửi tin nhắn
+ Bật / tăt chức năng Chat Room
+ Bật / tăt chức năng Bình luận
+ Bật / tăt chức năng Gửi ý kiến
+ Bật / tăt chức năng Gửi yêu cầu
Quản lý từng thành viên
+ Cho phép 1 user trở thành Mod, và ngược lại
+ Xóa thành viên
+ Cấp mật khẩu mới cho thành viên ( nếu user quên mật khẩu, và câu hỏi bí mật)
+ Cấp ( thay đổi ) quyền thành viên, cho phép / hoặc không cho phép thành viên gửi tin nhắn, bình luận, gửi yêu cầu tài liệu, gửi ý kiến đóng góp tới ban quản trị, upload tài liệu.
+ Đăng nhập vào tài khoản của user với quyền admin
CHƯƠNG II: XÂY DỰNG WEBSITE
2.1 PHÂN TÍCH
2.1.1 Xây dựng biểu đồ UseCase
a. Biểu đồ UseCase dành cho User
Hình2.1: Biểu đồ UseCase dành cho User
b. Biểu đồ UseCase dành cho Mod
Hình 2.2: Biểu đồ UseCase dành cho Mod
Các UseCase Quản lý tài liệu User Upload, Quản lý bình luận, Quản lý tài liệu được phân rã thành các UseCase nhỏ hơn.
- Phân rã Usecase Quản lý tài liệu User Upload
Hình 2.3: Phân rã UseCase Quản lý tài liệu User Upload
- Phân rã Usecase Quản lý tài liệu
Hình 2.4: Phân rã UseCase Quản lý tài liệu
- Phân rã Usecase Quản lý bình luận
Hình 2.5: Phân rã UseCase Quản lý bình luận
c. Biểu đồ UserCase dành cho Admin
Hình 2.6: Biểu đồ UserCase dành cho Admin
- Phân rã Usecase Quản lý chung
Hình 2.7: Biểu đồ UserCase Quản lý chung
- Phân rã Usecase Quản lý thành viên
Hình 2.8: Biểu đồ UserCase Quản lý thàn viên
2.1.2 Kịch bản – Scenario
a. Đăng nhập
Bảng 2.1: Kịch bản Đăng nhập
Tên USECASE
Đăng nhập
Tác nhân chính
Admin, Mod, User
Tiền điều kiện
Chưa đăng nhập
Đảm bảo tối thiểu
Yêu cầu đăng nhập lại
Đảm bảo thành công
Đăng nhập trên trang hiện hành
Kích hoạt
Khi thành viên đăng nhập
Chuỗi sự kiện chính
Lựa chọn chức năng đăng nhập bên trái website, nhập tên User và mật khẩu Pass
Hệ thống kiểm tra và lưu vào session
Trở lại trang hiện hành trước khi đăng nhập
b. Thay đổi thông tin tài khoản
Bảng 2.2: Kịch bản thay đổi thông tin tài khoản
Tên USECASE
Thay đổi thông tin
Tác nhân chính
Admin, Mod, User
Tiền điều kiện
Thành viên đã đăng nhập
Đảm bảo tối thiểu
Thông tin được giữ nguyên
Đảm bảo thành công
Thông tin được thay đổi
Kích hoạt
Khi thành viên chọn chức năng thông tin
Chuỗi sự kiện chính
Hệ thống hiển thị form thông tin tài khoản, và lựa chọn thay đổi thông tin được thay đổi như: Họ tên, giới tính, Email, Ngày sinh, Ghi chú, câu hỏi bí mật, câu trả lời, ảnh thành viên
Hệ thống kiểm tra, nếu thông tin hợp lệ xuất hiện nút cập nhật
Click nút cập nhật để cập nhật thay đổi thông tin tài khoản
Thông tin được thay đổi và lưu trong cơ sở dữ liệu
Trở lại form Thay đổi thông tin tài khoản và hiện thị kết quả đã thay đổi
c. Soạn tin nhắn
Bảng 2.3: Kịch bản chức năng soạn tin nhắn
Tên USECASE
xem, gửi tin nhắn
Tác nhân chính
Admin, Mod, User
Tiền điều kiện
Thành viên đã đăng nhập
Đảm bảo tối thiểu
Không gửi tin
Đảm bảo thành công
Tin nhắn được gửi đi
Kích hoạt
Khi thành viên chọn chức năng soạn tin mới
Chuỗi sự kiện chính
Hệ thống hiển thị form Soạn tin nhắn,yêu cầu nhập địa chỉ ( tên user) cần gửi đến ( có thể lấy từ danh bạ), nhập tiêu đề ( không bắt buộc), nhập nội dung tin nhắn
Hệ thống kiểm tra nếu thông tin hợp lệ xuất hiện thông báo “ hãy click vào nút Gửi tin để hoàn thành”
Click vào nút Gửi tin trên form, tin nhắn được gửi đi ( lưu trên cơ sở dữ liệu Messengers)
Chuyển đến trang Hộp tin nhắn đã gửi đi
d. Tìm kiếm tài liệu
Bảng 2.4: Kịch bản tìm kiếm tài liệu
Tên USECASE
Tìm kiếm tài liệu
Tác nhân chính
Admin, Mod, User
Tiền điều kiện
Thành viên đã đăng nhập
Đảm bảo tối thiểu
Không tìm thấy
Đảm bảo thành công
Tìm thấy, phân trang tìm kiếm
Kích hoạt
Khi thành viên chọn chức năng tìm kiếm
Chuỗi sự kiện chính
Thành viên nhập tên tài liệu cần tìm và click nút Tìm kiếm, hoặc click vào chương mục các tài liệu
Hệ thống thực hiện tìm kiếm theo yêu cầu và hiển thị kết quả tìm kiếm.
e. download tài liệu
Bảng 2.5: Kịch bản download tài liệu
Tên USECASE
Download tài liệu
Tác nhân chính
thành viên
Tiền điều kiện
Đảm bảo tối thiểu
Đảm bảo thành công
Tài liệu được download
Kích hoạt
Khi thành viên chọn chức năng Tải về
Chuỗi sự kiện chính
Sau khi chọn được tài liệu cần tìm, chọn chức năng tải về
Nếu đã đăng nhập tài liệu được tải về, nếu chưa đăng nhập chuyển đến form đăng nhập.
f. Upload tài liệu
Bảng 2.6: Kịch bản Upload tài liệu
Tên USECASE
Upload tài liệu
Tác nhân chính
Admin, Mod, User
Tiền điều kiện
Thành viên đã đăng nhập
Đảm bảo tối thiểu
Tài liệu không được upload
Đảm bảo thành công
Tài liệu đã được upload
Kích hoạt
Khi thành viên chọn chức năng Up tài liệu
Chuỗi sự kiện chính
Hệ thống hiển thị form Thành viên upload tài liệu, yêu cầu nhập các thông tin chi tiết về tài liệu như: tên tài liệu, chuyên đề, kích thước (tính bằng Kbyte), số trang, nguồn, nhà xuất bản, tác giả, theo yêu cầu, tóm tắt về tài liệu, mã xác nhận, chọn chức năng upload / uplink
Nếu chọn upload, chọn đường dẫn đến file tài liệu ( với định dạng được hỗ trợ cho phép upload là các kiểu file thuộc: pdf, doc, rar, zip, xls, ppt, prc, chm, txt), chọn đường dẫn đến file ảnh minh họa về tài liệu ( với định dạng cho phép là: gif, jpg, png)
Nếu chọn uplink, nhập link của tài liệu, link của ảnh minh họa về tài liệu
Hệ thống kiểm tra nếu thông tin hợp lệ xuất thông báo thông tin hợp lệ và click vào nút Upload để thực hiện
Nếu là Admin, Mod thực hiện Upload tài liệu thì tài liệu sẽ được đưa vào bảng ebooks , nếu là User thực hiện Upload thì tài liệu sẽ được đưa vào bảng ebookup
Trở lại trang Upload để tiếp tục Upload tài liệu khác.
g. Sửa tài liệu
Bảng 2.7: Kịch bản sửa chữa tài liệu
Tên USECASE
Sửa tài liệu
Tác nhân chính
Admin, Mod
Tiền điều kiện
Admin, Mod đã đăng nhập
Đảm bảo tối thiểu
Tài liệu giữ nguyên
Đảm bảo thành công
Tài liệu đã được sửa
Kích hoạt
Admin hoặc Mod chọn chức năng sửa tài liệu
Chuỗi sự kiện chính
Khi chọn tài liệu cần sửa, bên dưới xuất hiện nút sửa tài liệu dành cho Admin hoặc Mod lụa chọn
Hệ thống hiển thị Form sửa tài liệu và yêu cầu nhập các thông tin chi tiết viề tài liệu, và chọn nút sửa để kết thúc
Trở lại Form sửa tài liệu và hiển thị thông tin đã sửa, để tiếp tục sửa nếu cần thiết.
h. Cấp quyền cho thành viên
Bảng 2.8: Kịch bản Cấp quyền cho thành viên
Tên USECASE
Cấp quyền
Tác nhân chính
Admin
Tiền điều kiện
Admin đã đăng nhập
Đảm bảo tối thiểu
Quyền thành viên không thay đổi
Đảm bảo thành công
Quyền thành viên đã thay đổi
Kích hoạt
Admin chọn chức Cấp quyền
Chuỗi sự kiện chính
Khi Admin chọn chức năng Quản lý quyền ebook, form cấp quyên trên ebook xuất hiện, yêu cầu nhập tên user cần cấp quyền và lựa chọn quyền hạn đối với user này ( Trở thành Mod, trở thành user, được bình luận, nhắn tin, gửi ý kiến, upload tài liệu,,.. hay không)
Click chọn nút đồng ý và quyền mới đã được gán cho user
i. Quản lý chung
Bảng 2.14: Kịch bản Quản lý chung
Tên USECASE
Quản lý chung
Tác nhân chính
Admin
Tiền điều kiện
Admin đã đăng nhập
Đảm bảo tối thiểu
Đảm bảo thành công
Các chức năng chung được thay dổi
Kích hoạt
Admin chọn chức Quản lý chung
Chuỗi sự kiện chính
Khi Admin chọn chức năng Quản lý chung, form quản lý chung hiện ra , yêu cầu admin chọn các thay đổi cho phép hay không ( Đăng ký thành viên mới, thành viên gửi tin nhắn, thành viên gửi ý kiến, yêu cầu tài liệu, bình luận tài liệu, upload, uplink, download )
Click chọn nút Thực hiện và các chức năng đối với Website được thay đổi
2.1.3 Biểu đồ lớp phân tích
Hình 2.9: Biểu đồ lớp phân tích
Giải thích các phương thức của các lớp
a, Lớp ebooks
upload(): upload tài liệu
sua(): sửa tài liệu
binhluan(): bình luận tài liệu
xoa(): xóa tài liệu
b, Lớp admin
setdkyc(): thiết lập cho phép hay không chức năng đăng ký, yêu cầu
setntbl: thiết lập cho phép hay không chức năng nhắn tin, bình luận
setykup(): thiết lập cho phép hay không chức năng gửi ý kiến, upload tài liệu
setdownload(): thiết lập cho phép hay không chức năng download
setfolder(): thiết lập thay đổi đừng dẫn đến thư mục chứa tài liệu
getdkyc(): lấy thông tin cho phép hay không chức năng đăng ký, yêu cầu
getntbl(): lấy thông tin cho phép hay không chức năng nhắn tin, bình luận
getykup(): lấy thông tin cho phép hay không chức năng gửi ý kiến, upload tài liệu
getdownload(): lấy thông tin cho phép hay không chức năng download tài liệu
c, Lớp user
dangky(): đăng ký thành viên
capquyen(): cấp, thay đổi quyền đối với thành viên
xoa(): xóa thành viên
d, Lớp ebookup
upload(): upload tài liệu vào bảng ebookup mà user upload
sua(): sửa tài liệu user upload
chuyen(): chuyển tài liệu sang bảng ebooks
xoa(): xóa tài liệu
e, Lớp ebookyeucau
themyeucau(): thêm yêu cầu
xoa(): xóa yêu cầu
f, Lớp ykien
vietykien(): viết ý kiến gửi đến ban quản trị website
xoaykien(): xóa ý kiến
g, Lớp danhba
setdanhba(): thiết lập thêm mới vào danh bạ
getdanhba(): lấy thông tin từ danh bạ
xoa(): xóa bản ghi trong danh bạ
h, Lớp chatroom
setnoidung(): gửi nội dung chatroom
get(): lấy thông tin nội dung chatroom
xoa(): xóa bản ghi trong chatroom
k, Lớp ebookbluan
setbluan(): viết nội dung bình luận với tài liệu
getbluan(): lấy thông tin nội dung bình luận của tài liệu
xoa(): bình luận
l, Lớp messenger
soantin(): soạn tin nhắn để gửi đi
xemtin(): xem tin nhắn gửi đến
traloi(): trả lời tin nhắn
xoa(): xóa tin nhắn
Các thủ tục được trình bày trong phần phụ lục
2.2 PHA THIẾT KẾ
2.2.1 Các biểu đồ tuần tự
a. Biểu đồ tuần tự cho chức năng đăng nhập
Hình 2.10: Biểu đồ tuần tự cho chức năng đăng nhập
b. Biểu đồ tuần tự cho chức năng thay dổi thông tin
Hình 2.11: Biểu đồ tuần tự cho chức năng thay đổi thông tin
c. Biểu đồ tuần tự cho chức năng gửi tin nhắn
Hình 2.12: Biểu đồ tuần tự cho chức năng gửi tin nhắn
d. Biểu đồ tuần tự cho chức năng tìm kiếm tài liệu
Hình 2.13: Biểu đồ tuần tự cho chức năng tìm kiếm tài liệu
e. Biểu đồ tuần tự cho chức năng download tài liệu
Hình 2.14: Biểu đồ tuần tự cho chức năng download tài liệu
f. Biểu đồ tuần tự cho chức năng upload tài liệu
Hình 2.15: Biểu đồ tuần tự cho chức năng upload tài liệu
g. Biểu đồ tuần tự cho chức năng cấp quyền cho thành viên
Hình 2.16: Biểu đồ tuần tự cho chức năng cấp quyền cho thành viên
h. Biểu đồ tuần tự cho chức năng quản lý chung
Hình 2.17: Biểu đồ tuần tự cho chức năng quản lý chung
2.2.2 Biểu đồ lớp chi tiết
Hình 2.18: Biểu đồ lớp chi tiết
Biểu đồ hoạt động
a. Biểu đồ hoạt động chức năng đăng nhập
Hình 2.19: Biểu đồ hoạt động chức năng đăng nhập
b. Biểu đồ hoạt động chức năng thay đổi thông tin tài khoản
Hình 2.20: Biểu đồ hoạt động chức năng thay đổi thông tin tài khoản
c. Biểu đồ hoạt động chức năng gửi tin nhắn
Hình 2.21: Biểu đồ hoạt động chức năng gửi tin nhắn
d, Biểu đồ hoạt động chức năng tìm kiếm tài liệu
Hình 2.22: Biểu đồ hoạt động chức năng tìm kiếm tài liệu
e, Biểu đồ hoạt động chức năng download
Hình 2.23: Biểu đồ hoạt động chức năng download
f, Biểu đồ hoạt động chức năng upload
Hình 2.24: Biểu đồ hoạt động chức năng upload
g, Biểu đồ hoạt động chức năng cấp quyền cho thành viên
Hình 2.25: Biểu đồ hoạt động chức năng cấp quyền cho thành viên
h, Biểu đồ hoạt động chức năng quản lý chung
Hình 2.26 Biểu đồ hoạt động chức năng quản lý chung
Thiết kế cơ sở dữ liệu
a. Bảng admin
Hình 2.27: Bảng admin
b. Bảng chatroom
Hình 2.28: Bảng chatroom
c. Bảng danhba
Hình 2.29: Bảng danhba
d. Bảng ebookbluan
Hình 2.30: Bảng ebookbluan
e. Bảng ebooks
Hình 2.31: Bảng ebooks
f. Bảng ebookup
Hình 2.32: Bảng ebookup
g. Bảng ebookyeucau
Hình 2.33: Bảng ebookyeucau
h. Bảng messenger
Hình 2.34: Bảng messenger
i. Bảng ykien
Hình 2.35: Bảng ykien
j. Bảng users
Hình 2.36: Bảng users
Biểu đồ cơ sở dữ liệu quan hệ
Hình 2.37: Biểu đồ mô mình cơ sở dữ liệu quan hệ
CHƯƠNG III: CÀI ĐẶT
Website được cài đặt với ngôn ngữ PHP và cơ sở dữ liệu MySQL, máy chủ Apache trên hệ điều hành windowsxp.
Giao diện Website với một số chức năng được chảy thử
3.1 Giao diện trang chủ:
Hình 3.1: Giao diện chính của Website
Đăng ký thành viên
Hình 3.2: Giao diện chức năng đăng ký thành viên
Chức năng đăng ký, khi người dùng chưa có tài khoản, cần lập một tài khoản mới chọn chức năng này và nhập vào các thông tin cần thiết bắt buộc để hoàn thành việc đăng ký, sau khi đăng ký xong lập tức trở thành thành viên và không cần phải đăng nhập lại, với quyền và nhóm thuộc user.
3.3 Thành viên đăng nhập
Hình 3.3: Giao diện chức năng đăng ký thành viên
Thành viên muốn download tài liệu, gửi và nhận tin nhắn, gửi ý kiến, viết bình luận, gửi yêu cầu,... cần phải đăng nhập trước. nhập tên tài khoản đăng nhập và mật khẩu để tiến hành đăng nhập
3.4 Thông tin tài khoản
Hình 3.4: Giao diện chức năng xem, sửa thông tin
Sau khi đăng ký, đăng nhập thành viên có thể chọn chức năng Thông tin để xem thông tin của mình hoặc sửa đổi những thông tin cần thiết về tài khoản như: Họ tên, Giới tính, Email, Ngày sinh, câu hỏi bí mật, hình ảnh,...
3.5 Đổi mật khẩu
Hình 3.5: Giao diện chức năng đổi mật khẩu
Sau khi đăng nhập thành viên cũng có thể đổi mật khẩu của mình để an toàn cho việc sử dụng có thể chọn chức năng đổi mật khẩu để tiến hành thành viên cần nhập lại mật khẩu hiện đang sử dụng, nhập mật khẩu mới cần đổi, xác nhận lại, cuối cùng là click vào nút Thay đổi để hoàn thành.
3.6 Gửi tin nhắn
Hình 3.6: Giao diện chức năng gửi tin nhắn
Các thành viên có thể gửi và nhận tin nhắn từ thành viên khác với chức năng soạn tin nhập vào thành viên cần gửi đến, tiêu đề, nội dung tin nhắn
3.7 Gửi yêu cầu tài liệu
Hình 3.7: Giao diện chức năng Gửi yêu cầu tài liệu
Trong quá trình tìm kiếm mà kết quả không thấy tài liệu cần tìm thành viên có thể dùng chức năng yêu cầu tài liệu để gửi đến ban quản trị có thể giúp đỡ yêu cầu về tài liệu đó.
3.8 Bình luận tài liệu
Hình 3.8: Giao diện chức năng bình luận tài liệu
Sau khi tìm kiếm được kết quả như mong muốn và xem tài liệu thấy cần thiết và bổ ích cho bản thân, thành viên có thể sử dụng chức năng bình luận để cảm ơn người đã upload tài liệu, viết những ý kiến nhận xét riêng của mình về tài liệu này
3.9 Tìm kiếm tài liệu
Hình 3.9: Giao diện chức năng tìm kiếm tài liệu
Đây là giao diện của chức năng tìm kiếm theo tên tài liệu, sau khi nhập tên tài liệu và click nút tìm kiếm được kết quả như trên, gồm những tài liệu tìm thấy có tên thỏa mãn với từ khóa tìm kiếm và kết quả tìm kiếm được điều hướng phân trang giúp quá trình tìm kiếm tốt hơn.
3.10 Download tài liệu
Hình 3.10: Giao diện chức năng download tài liệu
Sau khi tìm thấy tài liệu cần thiết người dùng có thể click nào nút Tải về để download tài liệu, nếu chưa đăng nhập hệ thống sẽ chuyển đến giao diện form đăng nhập để yêu cầu đăng nhập trước khi download.
3.11 Upload tài liệu
Hình 3.11: Giao diện chức năng upload tài liệu
Chức năng rất quan trọng trong việc xây dựng website chia sẻ tài liệu đó là upload tài liệu, để các thành viên có thể chia sẻ tài liệu của mình đến mọi người. sử dụng chức năng upload tài liệu và nhập vào các thông tin về tài liệu như: tên, chuyên đề, kích thước, số trang, nhà xuất bản, tác giả,...
3.12 Cấp quyền cho thành viên
Hình 3.12: Giao diện chức năng cấp quyền cho thành viên
Thành viên tích cực trong việc upload tài liệu, có nhiều đóng góp tới website nếu muốn có thể trở thành thành viên của ban quản trị khi được admin cấp quyền thành Mod và ngược lại. Nếu thành viên vi phạm các quy định như: gửi tin nhắn, ý kiến, bình luận với mục đích gây rối thì người quản trị có thẻ hủy bỏ các quyền tương ứng đối với thành viên này, hoặc xóa bỏ thành viên.
3.13 Quản lý
Hình 3.13: Giao diện chức năng quản lý
Trong quá trình sử dụng khi cần hủy bỏ hay cho phép những chức năng nào được thực hiện người quản trị có thể sử dụng chức năng quản lý để cho phép hay không các chức năng như: yêu cầu tài liệu, bình luận tài liệu, chỉ cho uplink tài liệu, cho upload, cho download, cho đăng ký, nhắn tin, gửi ý kiến,..
KẾT LUẬN
Kết quả đã đạt được:
Đồ án đã được hoàn thành theo đúng thời hạn, cài đặt và chạy thử thành công các chức năng:
Các chức năng về quản lý website như quản lý tài liệu, quản lý chung các chức năng, quản lý thành viên,...
Các chức năng của thành viên: đăng ký, đăng nhập, tìm kiếm, điều hướng phân trang, download, upload, bình luận, gửi ý kiến, gửi tin nhắn, yêu cầu tài liệu, chatroom.
Đây là các chức năng cơ bản và cần thiết đối với các thành viên khi đã đăng ký, phục vụ nhu cầu tìm kiếm và trao đổi thông tin, tài liệu mà mục đích của đồ án đã đề ra: “Xây dượng website chia sẻ tài liệu”.
Hạn chế của đồ án:
Tốc độ xử lý mới được cài đặt và chạy thử với lượng dữ liệu ít, chưa thử chạy với nhiều người cùng lúc, vì vậy nếu số người truy cập cùng lúc nhiều thì có thể phát sinh lỗi.
Hướng phát triển
Thiết kế giao diện đẹp mắt, tương thích với người sử dụng
Phát triển thêm các chức năng phục vụ nhu cầu cho các thành viên, chức năng quản lý: trò truyện chuyền tải hình ảnh của quá trình trao đổi tài liệu, thống kê lượng dữ liệu truy cập
Phục vụ tốt khi có số lượng người truy cập lớn, và lượng dữ liệu upload, download với tốc đọ xử lý nhanh.
TÀI LIỆU THAM KHẢO
[1] Trần Đình Quế, Nguyễn Mạnh Sơn, Phân tích thiết kế hệ thống thông tin, Học viện Công nghệ Bưu chính Viễn thông.
[2] Nguyễn Đình Hiến, 2007, Phân tích và thiết kế hệ thống hướng đối tượng vói UML
[3] Phạm Hữu Khang, Xây dựng ứng dụng Web bằng PHP & MySQl, Nhà xuất bản Phương Đông.
[4]
PHỤ LỤC
upload() //upload tài liệu
{
$ten=$_POST["tens"]; $kt=$_POST["kichthuoc"]; $muc=$_POST["chuyende"]; $ycau=$_POST["ycau"];$sotrang=$_POST["sotrang"];
$nguon=$_POST["nguon"];$nxb=$_POST["nxb"]; $tacgia=$_POST["tacgia"]; $ghichu=$_POST["chuthich"]; $kieuup=$_POST["kieuup"];
$linksach=$_POST["linksach"]; $linkanh=$_POST["linkanh"];
$user=$_SESSION["login_name"];
$ngayup=date("Y")."-".date("m")."-".date("d");
$thoigian=$ngayup."-".date("H")."-".date("i")."-".date("s");
$thoigians=$ngayup." ".date("H").":".date("i").":".date("s")." ".date("D");
$uploaddir='ebooks/'.$_SESSION["downloaddir"].'/';
//xử lý kiểu up
if($kieuup==1)
{ //xử lý upload tài liệu
$tensach=basename($_FILES['linksach']['name']);
$kieufile=substr($tensach,-4); $tensach=$thoigian.$kieufile;
$filesach=$uploaddir.$tensach; //kết hợp với đường dẫn
move_uploaded_file($_FILES['linksach']['tmp_name'], $filesach);
// xử lý upload ảnh
$tenanh=basename($_FILES['linkanh']['name']);
if($tenanh) //nếu có ảnh
{
$kieufile=substr($tenanh,-4);
$tenanh=$thoigian.$kieufile;
$fileanh=$uploaddir.$tenanh;
move_uploaded_file($_FILES['linkanh']['tmp_name'], $fileanh);
}
}
else
{ $tensach=$linksach; $tenanh=$linkanh;
}
$table="ebooks";
if($_SESSION["quyen_ebook"]<2) $table="ebooksup";
$sql = "insert into ".$table." (ten,thoigian,user,kichthuoc,sotrang,muc,nguon,nxb,tacgia,linkfile,linkanh,ghichu,yeucau,kieuup)";
$sql.= " value ('$ten','$thoigians','$user','$kt','$sotrang','$muc','$nguon','$nxb','$tacgia','$tensach','$tenanh','$ghichu','$ycau','$kieuup')";
mysql_query($sql) or die ("Loi inset du lieu");
}
sua() //sửa tài liệu
{
$ten=$_POST["tens"]; $kt=$_POST["kichthuoc"]; $muc=$_POST["chuyenmuc"]; $ycau=$_POST["ycau"];$sotrang=$_POST["sotrang"];
$nguon=$_POST["nguon"];$nxb=$_POST["nxb"]; $tacgia=$_POST["tacgia"]; $ghichu=$_POST["chuthich"];
$linksach=$_POST["linksach"]; $linkanh=$_POST["linkanh"];
$sql="Update ".$table." set ten='".$ten."', muc='".$muc."',yeucau='".$ycau."',kichthuoc='".$kt."'";
$sql=$sql.",sotrang='".$sotrang."', nguon='".$nguon."', nxb='".$nxb."', tacgia='".$tacgia."'";
$sql=$sql.",ghichu='".$ghichu."' where id='".$id."'";
mysql_query($sql) or die ("Loi update du lieu1");
//xử lý linkfile, linkanh
if($linksach)
{
$sql="Update ".$table." set linkfile='".$linksach."' , linkanh='".$linkanh."' where id='".$id."'";
mysql_query($sql) or die ("Loi update du lieu2");
}
}
xoa(int $id) //xóa tài liệu
{
$sql="select kieuup, linkfile, linkanh from ebooks where id='".$id."'";
$resul=mysql_query($sql);
$row=mysql_fetch_array($resul);
$linkfile=$row["linkfile"]; $linkanh=$row["linkanh"];
$kieuup=$row["kieuup"];
//xóa khỏi cơ sở dữ liệu
$sqlk="delete from ebooks where id = '".$id."'";
mysql_query($sqlk) or die ("Loi delete du lieu");
$thumuc="../ebooks/".$_SESSION["downloaddir"]."/";
if($kieuup)
{ //xóa file tài liệu
$linkfile=$thumuc.$linkfile;
unlink ($linkfile);
if($linkanh)
{ //xóa file ảnh
$linkanh=$thumuc.$linkanh;
unlink ($linkanh);
}
}
}
chuyen() //chuyển tài liệu ở ebookup sang ebooks
{
$sql="select * from ebooksup where id='".$id."'";
$resul=mysql_query($sql);
$row=mysql_fetch_array($resul);
$ten=$row["ten"];$thoigian=$row["thoigian"];$user=$row["user"];$kichthuoc=$row["kichthuoc"];
$sotrang=$row["sotrang"];$muc=$row["muc"];$nguon=$row["nguon"];$nxb=$row["nxb"];
$tacgia=$row["tacgia"];$linkfile=$row["linkfile"];$linkanh=$row["linkanh"];$ghichu=$row["ghichu"];
$yeucau=$row["yeucau"];$kieuup=$row["kieuup"];
$sql = "insert into ebooks (ten,thoigian,user,kichthuoc,sotrang,muc,nguon,nxb,tacgia,linkfile,linkanh,ghichu,yeucau,kieuup)";
$sql.= " value ('$ten','$thoigian','$user','$kichthuoc','$sotrang','$muc','$nguon','$nxb','$tacgia','$linkfile','$linkanh','$ghichu','$yeucau','$kieuup')";
mysql_query($sql) or die ("Loi inset du lieu");
//sao chép sang bảng ebooks
//xóa khỏi bảng dữ liệu ebooksup
$sqlk="delete from ebooksup where id = '".$id."'";
mysql_query($sqlk) or die ("Loi delete du lieu");
}
Các file đính kèm theo tài liệu này:
- Xây dựng website chia sẻ tài liệu.doc