Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 80 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
80
Dung lượng
3,76 MB
Nội dung
VIỆN ĐẠI HỌC MỞ HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc Hà Nội, ngày 19 tháng 04 năm 2016 NHIỆM VỤ CỦA ĐỒ ÁN TỐT NGHIỆP Họ tên: Đỗ Tiến Tùng Giới tính: Nam Ngày sinh: 16/04/1994 Nơi sinh: Vĩnh Phúc Ngành: Công nghệ thơng tin Mã số: Lớp hành chính: 1210A04 12A10010108 TÊN ĐỀ TÀI XÂY DỰNG WEBSITE CHIA SẺ TÀI LIỆU NHIỆM VỤ VÀ NỘI DUNG Xây dựng website chia sẻ tài liệu giúp cho người tìm kiếm đọc chia sẻ tài liệu với Xây dựng website đáp ứng đầy đủ nhu cầu tìm kiếm, đọc, chia sẻ tài liệu người Sử dụng ngôn ngữ PHP, tảng Framework Laravel NGÀY GIAO NHIỆM VỤ: 11/01/2015 NGÀY HOÀN THÀNH NHIỆM VỤ: 11/05/2015 GIẢNG VIÊN HƯỚNG DẪN: GIẢNG VIÊN HƯỚNG DẪN Ths Trịnh Thị Xuân KHOA CÔNG NGHỆ THƠNG TIN LỜI NĨI ĐẦU Lời đầu tiên, em xin gửi lời cảm ơn chân thành lòng biết ơn đến cô Trịnh Thị Xuân thầy cô giáo môn công nghệ phần mềm Từ lúc em nhận đề tài đến lúc em hoàn thiện, em nhận nhiều bảo, tạo điều kiện giúp em hoàn thành cách tốt Đối với đề tài “Xây dựng website chia sẻ tài liệu trực tuyến.” với kinh nghiệm non việc xây dựng hệ thống thực Em cô giáo hướng dẫn định hướng bước thực Đồng thời, trình đánh giá kết tiến độ đồ án Em nhận nhiều ý kiến đánh giá thầy cô hội đồng Điều giúp em có nhìn đắn khó khăn mà em vấp phải trình hồn thiện Em xin gửi lời cảm ơn chân thành tới quý thầy, cô khoa Công nghệ thông tin, Viện đại học Mở Hà Nội tạo mơi trường học thân thiện, tận tình giảng dạy, truyền đạt kiến thức quý báu cho em Vốn kiến thức em có sau năm học tập hành trang giúp em tự tin bước vào đời Quá trình thực đồ án, em rút nhiều kinh nghiệm quý báu cho thân Tuy có cố gắng khơng thể tránh khỏi sai sót Em mong nhận lời góp ý chân thành từ phía thầy, bạn để hồn thiện kiến thức, cách làm việc Hà Nội, tháng 12 năm 2015 Đỗ Tiến Tùng MỤC LỤC Trang Chương TỔNG QUAN ĐỂ TÀI 1.1 Mục đích đề tài 1.2 Khảo sát hệ thống Chương CÔNG NGHỆ SỬ DỤNG 2.1 PHP 2.2 MySQL 2.3 Framework Laravel 2.4 Laravel Homestead 11 Chương PHÂN TÍCH HỆ THỐNG 13 3.1 Các chức hệ thống 13 3.2 Biểu đồ phân cấp chức 13 3.3 Biểu đồ luồng liệu 14 3.3.1 Các kí hiệu biểu đồ luồng liệu 14 3.3.2 Biểu đồ luồng liệu mức khung cảnh 15 3.3.3 Biểu đồ luồng liệu mức đỉnh 16 3.3.4 Biểu đồ luồng liệu mức đỉnh 17 Chương THIẾT KẾ HỆ THỐNG 22 4.1 Nhóm chức quản lý tài khoản 22 4.1.1 Thiết kế chi tiết chức đăng kí tài khoản 22 4.1.2 Thiết kế chi tiết chức đăng nhập hệ thống 26 4.1.3 Thiết kế chi tiết chức xem thông tin tài khoản 28 4.1.4 Thiết kế chi tiết chức khôi phục mật 30 4.1.5 Thiết kế chi tiết chức cập nhật tài khoản 33 4.2 Nhóm chức quản lý tài liệu 35 4.2.1 Thiết kế chi tiết chức tìm kiếm tài liệu 35 4.2.2 Thiết kế chi tiết chức xem tài liệu 38 4.2.3 Thiết kế chi tiết chức download tài liệu 41 4.2.4 Thiết kế chi tiết chức upload tài liệu 44 4.2.5 Thiết kế chi tiết chức yêu thích tài liệu 47 4.2.6 Thiết kế chi tiết chức cập nhật thông tin tài liệu 50 4.2.7 Thiết kế chi tiết chức duyệt tài liệu 53 4.3 Nhóm chức quản lý tin nhắn 55 4.3.1 Chi tiết chức đọc tin nhắn 55 4.3.2 Chi tiết chức gửi tin nhắn 57 4.4 Nhóm chức quản lý góp ý 60 4.5 Nhóm chức quản lý danh mục tài liệu 62 4.5.1 Chi tiết chức thêm danh mục 62 4.5.2 Chi tiết chức cập nhật danh mục 64 4.6 Mơ hình CSDL 66 4.7 Chi tiết bảng 67 4.7.1 Bảng categories 67 4.7.2 Bảng subcategories 67 4.7.3 Bảng users 67 4.7.4 Bảng password_resets 68 4.7.5 Bảng documents 69 4.7.6 Bảng download 69 4.7.7 Bảng favorites 70 4.7.8 Bảng messages 70 4.7.9 Bảng suggests 71 Chương TỔNG KẾT 72 5.1 Ưu điểm: 72 5.2 Nhược điểm: 72 5.3 Hướng phát triển hệ thống 72 TÓM TẮT ĐỒ ÁN Họ tên: Đỗ Tiến Tùng Chuyên ngành: Tin học ứng dụng Khóa 12 Giảng viên hướng dẫn: ThS Trịnh Thị Xuân Tên đề tài: Xây dựng website chia sẻ tài liệu Tóm tắt: Hệ thống website chia sẻ tài liệu trực tuyến cho phép bạn đọc thực công việc tìm kiếm, đọc tài liệu, download tài liệu, chia sẻ tài liệu tới người nhắm giúp phát triển đưa văn hóa đọc tới gần với người Việt Nam Các công nghệ sử dụng: PHP, MySQL, Framework Laravel Hệ thống hoạt động theo mơ hình website chia sẻ cung cấp thơng tin theo khách hàng thăm quan website tìm kiếm, đọc tài liệu chia sẻ đăng ký tài khoản thành viên vào hệ thống Thành viên hệ thống tải tài liệu xuống, u thích tài liệu chia sẻ tài liệu Nhà quản trị quản lý thông tin tài khoản thành viên, thông tin tài liệu chia sẻ, thông tin danh mục tài liệu, kiểm tra báo cáo thông kê, đọc tin nhắn, góp ý người gửi tới để xây dựng định hướng phát triển cho hệ thống DANH MỤC BẢNG BIỂU Bảng 4.1: Đặc tả chức đăng kí tài khoản 23 Bảng 4.2 : Bảng đặc tả chức đăng nhập 26 Bảng 4.3: Bảng đặc tả chi tiết chức xem thông tin TK 28 Bảng 4.4 : Bảng đặc tả chức khôi phục mật 31 Bảng 4.5 : Đặc tả chi tiết chức cập nhật thông tin TK 33 Bảng 4.6 : Bảng đặc tả chi tiết chưc tìm kiếm tài liệu 36 Bảng 4.7 : Đặc tả chi tết chức xem tài liệu 39 Bảng 4.8 : Bảng dặc tả chi tiết chức tải tài liệu 41 Bảng 4.9 : Đặc tả chi tiết chức update 44 Bảng 4.10 : Đặc tả chi tiết chức thích tài liệu 47 Bảng 4.11: Đặc tả chi tiết chức cập nhật thông tin tài liệu 50 Bảng 4.12 : Đặc tả chi tiết chức duyệt tài liệu 53 Bảng 4.13 : Đặc tả chi tiết chức đọc tin nhắn 55 Bảng 4.14 : Đặc tả chi tiết chức gửi tin nhắn 58 Bảng 4.15: Đặc tả chi tiết chức góp ý trả lời góp ý 60 Bảng 4.16 : Bảng danh mục lĩnh vực 67 Bảng 4.17: Bảng danh mục ngành thuộc lĩnh vực 67 Bảng 4.18: Bảng thành viên hệ thống 67 Bảng 4.19: Bảng khôi phục mật 68 Bảng 4.20: Bảng tài liệu 69 Bảng 4.21: Bảng tài liệu tải 69 Bảng 4.22: Bảng tài liệu yêu thích 70 Bảng 4.23: Bảng tin nhắn 70 Bảng 4.24: Bảng góp ý 71 DANH MỤC HÌNH VẼ Hình 2.1: Mức độ phổ biến framework PHP năm 2013 Hình 2.2 : Mức độ phổ biến framework PHP 2015 10 Hình 3.1: Sơ đồ phân cấp chức 13 Hình 3.2 : Các thành phần sơ đồ BFD 14 Hình 3.3: Quan hệ kho tiến trình 14 Hình 3.4: Sơ đồ phân cấp chức 15 Hình 3.5.Biểu đồ use case quản lý sản phẩm 16 Hình 3.6: Biểu đồ luồng liệu chức quản lý tài khoản 17 Hình 3.7: Biểu đồ luồng liệu chức quản lý tài liệu 18 Hình 3.8: Biểu đồ luồng liệu chức quản lý tin nhắn 19 Hình 3.9: Biểu đồ liệu chức quản lý góp ý 19 Hình 3.10: Biểu đồ liệu chức quản lý danh mục tài liệu 20 Hình 3.11: Biểu đồ chức thống kê báo cáo 21 Hình 4.1: Mơ hình hóa quy trình nghiệp vụ chức đăng kí 22 Hình 4.2 Bảng Users 24 Hình 4.3: Giao diện đăng kí tài khoản 25 Hình 4.4: Mơ hình hóa quy trình nghiệp vụ chức đăng nhập 26 Hình 4.5 : Giao diện đăng nhập tài khoản 28 Hình 4.6 Quy trình nghiệp vụ chức xem thơng tin tài khoản 28 Hình 4.7 : Giao diện profile thành viên 29 Hình 4.8: Mơ hình hóa quy trình nghiệp vụ chức khơi phục mật 30 Hình 4.9 : CSDL chức khôi phục mật 32 Hình 4.10 : Giao diện chức khôi phục mật 32 Hình 4.11: Mơ hình hóa quy trình nghiệp vụ chức cập nhật thơng tin 33 Hình 4.12 Mơ hình hóa quy trình nghiệp vụ tìm kiếm tài liệu 35 Hình 4.13 :Cơ sở liệu chức tìm kiếm tài liệu 37 Hình 4.14 : Mơ hình hóa quy trình chức xem tài liệu 38 Hình 4.15 : Giao diện chức xem tài liệu 40 Hình 4.16: Mơ hình hóa quy trình download tài liệu 41 Hình 4.17: CSDL chức download tài liệu 42 Hình 4.18: Giao diện chức tải tài liệu 43 Hình 4.19 Mơ hình hóa quy trình nghiệp vụ upload tài liệu 44 Hình 4.20 : Giao diện chức upload tài liệu 46 Hình 4.21 : Mơ hình hóa quy trình nghiệp vụ chức u thích tài liệu 47 Hình 4.22 : CSDL chức thích tài liệu 48 Hình 4.23 : Giao diện chức thích tài liệu 49 Hình 4.24 Quy trình cập nhật thơng tin tài liệu 50 Hình 4.25 : Giao diện chức thêm tài liệu 52 Hình 4.26 : Mơ hình hóa chức duyệt tài liệu 53 Hình 4.27 : Giao diện chức duyệt tài liệu 54 Hình 4.28 : Mơ hình hóa chức đọc tin nhắn 55 Hình 4.29: CSDL chức đọc, gửi tin nhắn 56 Hình 4.30: Giao diện chức đọc tin nhắn 56 Hình 4.31 : Mơ hình hóa chức gửi tin nhắn 57 Hình 4.32: Giao diện chức gửi tin nhắn 59 Hình 4.33: Mơ hình hóa chức quản lý góp ý 60 Hình 4.34 : CSDL chức góp ý trả lời góp ý 61 Hình 4.35 : Mơ hình hóa chức thêm danh mục 62 Hình 4.36: CSDL vật lý chức thêm danh mục tài liệu 62 Hình 4.37: Giao diện thêm danh mục chuyên nghành 63 Hình 4.38 Giao diện thêm danh mục chuyên nghành 63 Hình 4.39 : Mơ hình hóa chức cập nhật danh mục 64 Hình 4.40: CSDL vật lý chức cập nhật danh mục 64 Hình 4.41 : Giao diện chức sửa lĩnh vực 65 Hình 4.42 : Giao diện chức sửa chuyên nghành 65 Hình 4.43 : Mơ hình CSDL vật lý toán 66 Chương TỔNG QUAN ĐỂ TÀI 1.1 Mục đích đề tài Cung cấp cho bạn đọc tài liệu bổ ích, giúp cho bạn đọc tìm kiếm tài liệu cách dễ dàng Tạo nơi giúp người chia sẻ với tài liệu góp phần phát triển, đưa văn hóa đọc tới gần với tất người 1.2 Khảo sát hệ thống Hệ thống website chia sẻ tài liệu phục vụ nhóm người dùng : Quản trị, thành viên, khách Khách bạn đọc tìm đến hệ thống để tìm kiếm đọc tài liệu khơng có tài khoản thành viên thành viên chưa đăng nhập vào hệ thống Thành viên bạn đọc có tài khoản thành viên đăng nhập vào hệ thống Quản trị viên người quản lý, vận hành hệ thống website Khách đăng kí làm thành viên hệ thống qua chức đăng kí tài khoản Khi đăng kí tài khoản hệ thống yêu cầu khách cung cấp thông tin : Tên, Email , Mật Email khơng trùng với email đăng kí trước Sau bấm đăng kí hệ thống gửi email đăng kí tài khoản thành cơng u cầu khách kích hoạt tài khoản Sau khách đọc email bấm vào link kích hoạt tài khoản hệ thống đưa khách tới trang kích hoạt tài khoản Sau kích hoạt tài khoản thành cơng hệ thống cộng vào tài khoản 100 point để khách hàng download tài liệu Đối với người coi Khách tìm kiếm tài liệu, đọc tài liệu, xem danh mục tài liệu có hệ thống Tài liệu hệ thống có nhiều chia thành mục để quản lý Tài liệu quản lý xem thuộc chuyên ngành nào, thuộc lĩnh vực Một lĩnh vực có nhiều chun ngành có nhiều tài liệu thuộc chuyên ngành Khi đọc tài liệu hệ thống bạn đọc muốn tải tài liệu u thích tài liệu hệ thống kiểm tra bạn đọc có thành viên hệ thống khơng? • Nếu khơng thành viên hệ thống u cầu đăng kí tài khoản để download tài liệu hay u thích tài liệu • Nếu thành viên hệ thống kiểm tra số point tài khoản có đủ để download tài liệu không Với tài liệu tải hệ thống trừ 10 point thành viên Để kiếm point phục vụ việc download tài liệu người dùng thực việc chia sẻ tài liệu Với tài liệu chia sẻ lên người dùng cộng point vào tài khoản Và tài liệu tải lên đưa vào danh sách duyệt đợi quản trị duyệt lúc tài liệu xem quản trị người upload tài liệu lên Sau quản trị duyệt tài liệu xong, thành viên upload tài liệu cộng 10 point vào tài khoản Nếu tài khoản không duyệt thành viên không cộng điểm Kết thúc trình duyệt hệ thống gửi thơng báo dạng tin nhắn tới thành viên thông báo kết duyệt tài liệu Mỗi tài liệu thành viên chia sẻ người khác tải thành viên cộng point vào tài khoản 58 b) Đặc tả chi tiết chức Bảng 4.14 : Đặc tả chi tiết chức gửi tin nhắn Tên chức năng: Gửi tin nhắn Đầu vào: Email người nhận, Nội dung tin nhắn Đầu ra: Kết gửi tin nhắn Tiền xử lý: Đăng nhập Nội dung xử lý: Bước 1: Người dùng yêu gửi tin nhắn Bước 2: Hệ thống kiểm tra xem gửi tin nhắn hay trả lời tin nhắn cũ • Nếu tin nhắn yêu cầu nhập địa email, tiêu đề tin nhắn, nội dung chuyển sang bước • Nếu tin nhắn cũ cần nhập nội dung bấm trả lời Bước 3: Hệ thống kiểm tra email người nhận có tồn hay khơng • Nếu có tồn địa email hệ thống gửi tin nhắn tới tài khoản kết thúc • Nếu khơng tồn địa email hệ thống thơng báo sai quay trở bước yêu cầu nhập lại 59 c) Thiết kế CSDL vật lý d) Giao diện chức Hình 4.32: Giao diện chức gửi tin nhắn 60 4.4 Nhóm chức quản lý góp ý a) Mơ hình hóa chức Hình 4.33: Mơ hình hóa chức quản lý góp ý b) Đặc tả chi tiết chức Bảng 4.15: Đặc tả chi tiết chức góp ý trả lời góp ý Tên chức năng: Góp ý trả lời góp ý Đầu vào: Góp ý Đầu ra: Kết trả lời góp ý Tiền xử lý: Đăng nhập Nội dung xử lý: 61 Bước 1: Thành viên có yêu cầu góp ý Bước 2: Hệ thống tiếp nhận yêu cầu lưu vào sở liệu Bước 3: Thông báo cho quản trị biết có góp ý Bước 4: Quản trị đọc trả lời góp ý Bước 5: Hệ thống cập nhật câu trả lời thông báo câu trả lời tới người gửi c) Thiết kế CSDL vật lý Hình 4.34 : CSDL chức góp ý trả lời góp ý 62 d) Giao diện chức 4.5 Nhóm chức quản lý danh mục tài liệu 4.5.1 Chi tiết chức thêm danh mục a) Mơ hình hóa chức Hình 4.35 : Mơ hình hóa chức thêm danh mục b) Đặc tả chi tiết chức c) CSDL vật lý Hình 4.36: CSDL vật lý chức thêm danh mục tài liệu 63 d) Giao diện chức Hình 4.37: Giao diện thêm danh mục chuyên nghành Hình 4.38 Giao diện thêm danh mục chuyên nghành 64 4.5.2 Chi tiết chức cập nhật danh mục a) Mơ hình hóa chức Hình 4.39 : Mơ hình hóa chức cập nhật danh mục b) Đặc tả chi tiết chức c) CSDL vật lý Hình 4.40: CSDL vật lý chức cập nhật danh mục 65 d) Giao diện chức Hình 4.41 : Giao diện chức sửa lĩnh vực Hình 4.42 : Giao diện chức sửa chun nghành 66 4.6 Mơ hình CSDL Hình 4.43 : Mơ hình CSDL vật lý toán 67 4.7 Chi tiết bảng 4.7.1 Bảng categories Bảng 4.16 : Bảng danh mục lĩnh vực STT Thuộc tính Kiểu liệu Khóa PK Diễn giải id INT ID lĩnh vực cate_name VARCHAR(50) Tên lĩnh vực describe LONGTEXT Mô tả lĩnh vực storage VARCHAR Đường dẫn lưu trữ liệu created_at TIMESTAMP Thời gian tạo ghi 4.7.2 Bảng subcategories Bảng 4.17: Bảng danh mục ngành thuộc lĩnh vực STT Thuộc tính Kiểu liệu INT Khóa PK Diễn giải id subcate_name VARCHAR(50) Tên chuyên nghành describe LONGTEXT Mô tả chuyên nghành storage VARCHAR(100) Đường dẫn lưu trữ liệu id_cate INT created_at TIMESTAMP FK ID chuyên nghành ID lĩnh vực Thời gian tạo ghi 4.7.3 Bảng users Bảng 4.18: Bảng thành viên hệ thống STT Thuộc tính Kiểu liệu id INT name VARCHAR(50) email VARCHAR(50 Khóa PK Diễn giải ID thành viên Tên hiển thị hệ thống CK Email đăng nhập hệ thống 68 password VARCHAR(50) Password tài khoản avartar VARCHAR(100 Ảnh đại diện tài khoản status TINYINT Trạng thái remember_t VARCHAR(100) Token ghi nhớ tài khoản oken id_role INT created_at TIMESTAMP FK ID lĩnh vực Thời gian tạo ghi 4.7.4 Bảng password_resets Bảng 4.19: Bảng khôi phục mật STT Thuộc tính Kiểu liệu Khóa Diễn giải id INT PK Khóa bảng emai VARCHAR(50) CK,FK Email cần khôi phục mật token VARCHAR(100) Chuỗi xác nhận định danh created_at TIMESTAMP Thời gian tạo ghi 69 4.7.5 Bảng documents Bảng 4.20: Bảng tài liệu STT Thuộc tính Kiểu liệu INT Khóa PK Diễn giải id ID tài liệu document_name VARCHAR(50) auth VARCHAR(50 describe LONG TEXT Mô tả tài liệu link VARCHAR(100 Đường dẫn file tài liệu uploadby INT Upload checkby INT FK Kiểm tra id_subcate INT FK ID lĩnh vực active TINYINT Trạng thái duyệt 10 visible TINYINT Trạng thái hiển thị 11 share TINYINT Trạng thái chia sẻ 12 created_at TIMESTAMP Thời gian tạo ghi Tên tài liệu CK Tác giả tài liệu 4.7.6 Bảng download Bảng 4.21: Bảng tài liệu tải STT Thuộc tính Kiểu liệu Khóa Diễn giải id INT PK Khóa bảng user_id INT FK Id người tải document_id INT FK Id tài liệu tải xuống created_at TIMESTAMP Thời gian tạo ghi 70 4.7.7 Bảng favorites Bảng 4.22: Bảng tài liệu yêu thích STT Thuộc tính Kiểu liệu Khóa Diễn giải id INT PK Khóa bảng user_id INT FK Id người yêu thích document_id INT FK Id tài liệu yêu thích status TINYINT Trạng thái ghi created_at TIMESTAMP Thời gian tạo ghi 4.7.8 Bảng messages Bảng 4.23: Bảng tin nhắn STT Thuộc tính Kiểu liệu Khóa id INT title VARCHAR Tiêu đề tin nhắn content LONGTEXT Nội dung tin nhắn sendby_id INT FK Id người gửi tin nhắn sendto_id INT FK Id người nhận tin nhắn read_status TINYINT Trạng thái đọc tin nhắn delete_1 TINYINT Trạng thái xóa phía người gửi delete_2 TINYINT Trạng thái xóa phía người nhận created_at TIMESTAMP Thời gian tạo ghi 4.7.9 PK Diễn giải Khóa bảng 71 4.7.10 Bảng suggests Bảng 4.24: Bảng góp ý STT Thuộc tính Kiểu liệu Khóa PK Diễn giải id INT Khóa bảng title VARCHAR Vấn đề cần góp ý content LONGTEXT Nội dung góp ý sendby_id INT FK Id người gửi góp ý repby_id INT FK Id người trả lời góp ý read_status TINYINT Trạng thái đọc created_at TIMESTAMP Thời gian tạo ghi 72 Chương TỔNG KẾT 5.1 Ưu điểm: • Kích hoạt, khơi phục mật tự động qua mail • Hệ thống xử lý hầu hết chức việc quản lý, chia sẻ tài liệu như: đọc, tìm kiếm, tải về, tải lên • Có hệ thống tổ chức lưu trữ file cách rõ ràng 5.2 Nhược điểm: Tuy nhiên hệ thống không tránh khỏi hạn chế: • Các chức cịn chưa hoàn thiện đủ so với thiết kế ban đầu • Chưa thể sử dụng tài khoản google, facebook, để làm tài khoản hệ thống • Chưa có chức comment tài liệu 5.3 Hướng phát triển hệ thống Với mong muốn phát triển hệ thống website chia sẻ tài liệu docShare trở nên lớn mạnh hệ thống phát triển theo hướng: - Tích hợp thêm chức mua point tiền mặt - Các tài liệu chia sẻ cho nhóm người định - Áp dụng Social Login vào hệ thống Việc áp dụng cho khách hàng đăng ký tài khoản tài khoản mạng xã hội