mẩu báo cáo đồ án tốt nghiệp ngành công nghệ thông tinĐề tài: Xây dựng mạng xã hội du lịch với frameword LaravelDành cho nhưng ai chưa có kiến thức về trình bày văn bản và đây là mẩu chuẩn do trường đại học bách khoa đà nẵng xây dựng
ĐẠI HỌC ĐÀ NẴNG TRƢỜNG ĐẠI HỌC BÁCH KHOA KHOA CÔNG NGHỆ THÔNG TIN Tel (84-511) 3736949, Fax (84-511) 3842771 Website: itf.dut.udn.vn, E-mail: cntt@dut.udn.vn ĐỒ ÁN TỐT NGHIỆP KỸ SƢ NGÀNH CÔNG NGHỆ THÔNG TIN MÃ NGÀNH: D480201 ĐỀ TÀI : XÂY DỰNG MẠNG XÃ HỘI DU LỊCH SỬ DỤNG FRAMEWORK LARAVEL SINH VIÊN MÃ SINH VIÊN LỚP CBHD : Nguyễn Thành Phƣớc : 102110224 : 11T2 : Th.S Đặng Duy Thắng Đà Nẵng, 06/2016 LỜI CẢM ƠN Đầu tiên, xin gửi lời cảm ơn chân thành tới Th.S Đặng Duy Thắng giúp đỡ hoàn thành tốt đề tài đồ án tốt nghiệp Trong trình hướng dẩn làm đồ án thầy bảo hướng dẩn tận tình cho lý thuyết, kỹ lập trình, cách giải vấn đề đề tài,… Thầy người truyền động lực cho tôi, đề xuất cho ý tưởng mẽ giúp hoàn thành tốt đề tài đồ án Chân thành cảm ơn bạn bè lớp hỗ trợ tội để hoàn thành tốt đề tài báo cáo Tôi xin chân thành biết ơn dạy dỗ tận tình thầy cô Khoa Công nghệ thông tin - Trường Đại học Bách khoa Đà Nẵng Cuối xin dành lời cảm ơn sâu sắc đến gia đình tôi, sát cánh động viên dạy dỗ suốt đời Mặc dù cố gắng hoàn thành đồ án phạm vi khả cho phép chắn không tránh khỏi thiếu sót Tôi mong nhận thông cảm, góp ý tận tình bảo quý Thầy Cô bạn Nguyễn Thành Phƣớc i LỜI CAM ĐOAN Tôi xin cam đoan: Nội dung đồ án thực hướng dẫn trực tiếp Th.S Đặng Duy Thắng Các tham khảo dùng đồ án trích dẫn rõ ràng tên tác giả, tên công trình, thời gian, địa điểm công bố Nếu có chép không hợp lệ, vi phạm, xin chịu hoàn toàn trách nhiệm Sinh viên thực Nguyễn Thành Phƣớc ii NHẬN XÉT CỦA NGƢỜI HƢỚNG DẪN iii NHẬN XÉT CỦA NGƢỜI PHẢN BIỆN iv MỤC LỤC DANH SÁCH HÌNH ẢNH VII DANH SÁCH TỪ VIẾT TẮT IX MỞ ĐẦU CHƢƠNG 1: TÌM HIỂU VỀ MÔ HÌNH MVC VÀ LARAVEL FRAMEWORK 1.1 MỘT SỐ KHÁI NIỆM 1.1.1 Mạng xã hội 1.1.2 Mạng xã hội du lịch 1.1.3 Đặc điểm mạng xã hội 1.2 GIỚI THIỆU MÔ HÌNH MVC .4 1.2.1 Giới thiệu 1.2.2 Lịch sử mô hình MVC 1.2.3 Kiến trúc mô hình MVC 1.2.4 Đặc điểm mô hình MVC 1.2.5 Tìm hiểu Controller 1.2.6 Tìm hiểu Model 1.2.7 Tìm hiểu View 1.2.8 Ƣu khuyết điểm mô hình MVC 1.3 GIỚI THIỆU LARAVEL FRAMEWORK 1.3.1 Giới thiệu 1.3.2 Lịch sử phát triển Laravel 1.3.3 Sơ lƣợc tính Laravel Framework 11 1.4 TIẾN ĐỘ THỰC HIỆN ĐỀ TÀI 12 1.5 KẾT CHƢƠNG 13 CHƢƠNG 2: PHÂN TÍCH ĐỀ TÀI VÀ KẾ HOẠCH TRIỂN KHAI .14 2.1 PHÂN TÍCH ĐỀ TÀI 14 v 2.1.1 Lý lựa chọn đề tài 14 2.1.2 Mục tiêu đề tài 14 2.1.3 Phân tích chức 14 2.2 PHÂN TÍCH TRIỂN KHAI HỆ THỐNG 15 2.2.1 Phân tích yêu cầu ngƣời dùng, ngƣời quản trị 15 2.2.2 Tạo bảng sở liệu 16 2.2.3 Biểu đồ ca sử dụng (Usecase Diagram) 20 2.2.4 Biểu đồ (Sequence Diagram) 24 2.2.5 Biểu đồ lớp (Class Diagram) 28 2.2.6 Biểu đồ hoạt động (Active Diagram ) 29 2.3 KẾT CHƢƠNG 32 CHƢƠNG 3: CÀI ĐẶT VÀ ĐÁNH GIÁ SẢN PHẨM 33 3.1 MÔI TRƢỜNG CÀI ĐẶT 33 3.1.1 Chuẩn bị 33 3.1.2 Bắt đầu cài đặt: 33 3.2 TRIỂN KHAI 35 3.3 KẾT QUẢ TRIỂN KHAI 36 3.4 ĐÁNH GIÁ ƢU NHƢỢC ĐIỂM WEBSITE .41 3.5 KẾT CHƢƠNG 42 CHƢƠNG 4: KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN 43 4.1 KẾT QUẢ ĐẠT ĐƢỢC .43 4.2 HƢỚNG PHÁT TRIỂN 43 TÀI LIỆU THAM KHẢO 44 vi DANH SÁCH HÌNH ẢNH Hình 1: Các thành phần mô hình MVC Hình 2: Mô hình MVC Hình 3: Bảng thành viên 16 Hình 4: Bảng địa điểm 17 Hình 5: Bảng Tours 17 Hình 6: Bảng nhà hàng 18 Hình 7: Bảng statuses 18 Hình 8: Bảng thích 19 Hình 9: Bảng khách sạn 19 Hình 10: Bảng bạn bè 20 Hình 11: Biểu đồ ca sử dụng chức thành viên 20 Hình 12: Biểu đồ ca sử dụng Admin 21 Hình 13: Admin quản lý thành viên 21 Hình 14: Biểu đồ ca sử dụng chức địa điểm 22 Hình 15: Biểu đồ ca sử dụng khách sạn .22 Hình 16: Biểu đồ ca sử dụng nhà hàng .23 Hình 17:Biểu đồ ca sử dụng Tour .23 Hình 18: Biểu đồ đăng nhập đăng ký 24 Hình 19: Biểu đồ cập nhật trạng thái 24 Hình 20: Biểu đồ địa điểm 25 Hình 21: Biểu đồ Tour 25 Hình 22: Biểu đồ nhà hàng 26 Hình 23: Biểu đồ khách sạn 26 Hình 24: Biểu đồ cập nhật thông tin 27 Hình 25: Biểu đồ chức tìm kiếm 27 Hình 26: Biểu đồ lớp 28 Hình 27: Biểu đồ hoạt động chức đăng ký 29 Hình 28: Biểu đồ hoạt động chức đăng nhập 30 vii Hình 29: Biểu đồ hoạt động chức cập nhật trạng thái 30 Hình 30: Biểu đồ hoạt động chức nặng cập nhật thông tin cá nhân 31 Hình 31: Biểu đồ hoạt động chức tìm kiếm 32 Hình 32: Các thƣ mục Laravel sau cài đặt 34 Hình 33: Chạy project Laravel sau cài đặt 35 Hình 34: Màn hình giới thiệu 36 Hình 35: Màn hình đăng nhập 36 Hình 36: Màn hình đăng ký 37 Hình 37: Giao diện sau đăng nhập thành công 37 Hình 38: Màn hình xem địa điểm bên ngƣời dùng .38 Hình 39: Màn hình kết bạn yêu cầu kết bạn 39 Hình 40: Màn hình cập nhật thông tin .39 Hình 41: Màn hình thay đỗi mật 40 Hình 42: Màn hình chat 40 Hình 43: Màn hình tìm kiếm 41 viii DANH SÁCH TỪ VIẾT TẮT Từ viết tắt Diễn giải MXH Mạng xã hội ( Social network) MVC Model View Controller OOP Hƣớng đối tƣợng (Object-oriented-programming) ix Xây dựng mạng xã hội sử dụng Laravel Frameword Hình 28: Biểu đồ hoạt động chức đăng nhập Hình 29: Biểu đồ hoạt động chức cập nhật trạng thái Nguyễn Thành Phƣớc – 11T2 30 Xây dựng mạng xã hội sử dụng Laravel Frameword Hình 30: Biểu đồ hoạt động chức nặng cập nhật thông tin cá nhân Nguyễn Thành Phƣớc – 11T2 31 Xây dựng mạng xã hội sử dụng Laravel Frameword Hình 31: Biểu đồ hoạt động chức tìm kiếm 2.3 KẾT CHƢƠNG Hoàn thành việc phân tích chức bên hệ thống, phân tích yêu cầu cần thiết cho website Dựa vào việc phân tích chức bên hệ thống triển khai biểu đồ mô tả hoạt động, biểu đồ tuần tự, biểu đồ lớp Dựa vào loại biểu đồ chức tiến hành tạo bảng cở sở liệu phục vụ cho việc code chức website Nguyễn Thành Phƣớc – 11T2 32 Xây dựng mạng xã hội sử dụng Laravel Frameword CHƢƠNG 3: CÀI ĐẶT VÀ ĐÁNH GIÁ SẢN PHẨM 3.1 MÔI TRƢỜNG CÀI ĐẶT Ở demo môi trƣờng localhost nên trình bày cách cài đặt project môi trƣờng cần thiết để chạy đƣợc project 3.1.1 Chuẩn bị Để cài đặt Laravel 5, máy bạn phải có phiên PHP >= 5.3.7 Mcrypt PHP Extension Nếu bạn cài đặt Xampp Wamp bao gồm hai điều kiện không cần phải cài đặt lại Bật extension php_openssl (mở file php.ini lên tìm dòng ;extension=php_openssl.dll, bỏ dấu; đầu dòng save file lại restart apache) Download cài đặt Composer cho window link getcomposer.org/ Composer-Setup.exe Trong trình cài đặt composer thông báo lên hỏi bạn chọn thƣ mục chứa file php.exe Đối với wamp, nằm đƣờng dẫn giống C:\wamp\bin\php\php5.5.12\php.exe xampp C:\xampp\php\php.exe Để chạy đƣợc project laravel bạn cần rõ đƣờng dẩn file php: Cách làm nhƣ sau: Vào Control Panel => System => Advanced system settings => Environment Variables Trong System Valiables tìm Path ấn vào button edit thêm vào ;C:\xampp\php vào cuối dòng lƣu lại 3.1.2 Bắt đầu cài đặt: Bƣớc 1: Vào driver google theo đƣờng link sau: https://drive.google.com/file/d/0B2isNGJhWmsYZHdkZFREUU9NSHc/vie w?usp=sharing Tiến hành tải project giải nén Bƣớc 2: Tiến hành cài đặt xamp chép thƣ mục giải nén vào nơi bạn cài đặt xamp htdocs: C:\xampp\htdocs Nguyễn Thành Phƣớc – 11T2 33 Xây dựng mạng xã hội sử dụng Laravel Frameword Tiến hành nạp sở liệu lên mysql sever cách nạp file mxh.sql vào mysql bạn Dƣới nôi dung thƣ mục có project Hình 32: Các thƣ mục Laravel sau cài đặt Bƣớc 3: Sau bật server lên vào trình duyệt bạn gõ http://localhost/mxh (ở tên project MXH) bạn thấy nhƣ hình tức bạn cài đặt thành công Nguyễn Thành Phƣớc – 11T2 34 Xây dựng mạng xã hội sử dụng Laravel Frameword Hình 33: Chạy project Laravel sau cài đặt 3.2 TRIỂN KHAI Qua tìm hiểu Laravel Frameword xây dựng thành công website mạng xã hội du lịch Qua sử dụng tính nhƣ: Route, Authentication, Controller, Request, config, database với migration Ở dùng bootstrap viết giao diện gửi thông tin controller, controller tƣơng tác với sở liệu gửi kết thực thi lại giao diện để hiển thị Về bảo mật sử dụng chế mã hóa mật “bcrypt” để đề phòng khả tin tặc tiếp cận đọc đƣợc sở liệu, không muốn tin tặc khôi phục đƣợc văn gốc mật Lƣu ý thƣờng lƣu trữ tên truy cập, địa email thông tin cá nhân khác sở liệu Quy tắc bảo mật số ngƣời dùng cần phải đƣợc bảo vệ khỏi thân họ Chúng ta cảnh báo cho ngƣời dùng nguy cơ, khuyên họ không tái sử dụng mật khẩu, nhƣng biết rốt có ngƣời sử dụng mật cho tài khoản Facebook, Gmail, Linkedin mail doanh nghiệp Điều mà bạn Nguyễn Thành Phƣớc – 11T2 35 Xây dựng mạng xã hội sử dụng Laravel Frameword không mong muốn tin tặc tiếp cận đƣợc sở liệu bạn truy cập đƣợc toàn tài khoản 3.3 KẾT QUẢ TRIỂN KHAI Hình 34: Màn hình giới thiệu Hình 35: Màn hình đăng nhập Nguyễn Thành Phƣớc – 11T2 36 Xây dựng mạng xã hội sử dụng Laravel Frameword Hình 36: Màn hình đăng ký Hình 37: Giao diện sau đăng nhập thành công Nguyễn Thành Phƣớc – 11T2 37 Xây dựng mạng xã hội sử dụng Laravel Frameword Hình 38: Màn hình xem địa điểm bên ngƣời dùng Nguyễn Thành Phƣớc – 11T2 38 Xây dựng mạng xã hội sử dụng Laravel Frameword Hình 39: Màn hình kết bạn yêu cầu kết bạn Hình 40: Màn hình cập nhật thông tin Nguyễn Thành Phƣớc – 11T2 39 Xây dựng mạng xã hội sử dụng Laravel Frameword Hình 41: Màn hình thay đỗi mật Hình 42: Màn hình chat Nguyễn Thành Phƣớc – 11T2 40 Xây dựng mạng xã hội sử dụng Laravel Frameword Hình 43: Màn hình tìm kiếm 3.4 ĐÁNH GIÁ ƢU NHƢỢC ĐIỂM WEBSITE Tôi xây dựng thành công ứng dụng mạng xã hội du lịch với đầy đủ cá tính nhƣ sau: Đăng nhập trang web cách sử dụng tài khoản Facebook hay google, hoàn thành việc cập nhật trạng thái ngƣời dùng, chat nhóm ngƣời dùng, hiển thị thông tin địa điểm, nhà hàng, khách sạn Cho phép ngƣời dùng thêm địa điểm, khách sạn, nhà hàng Ƣu điểm: Dể sử dụng, trang web hữu ích cho ngƣời sử dụng đăng tải thông tin du lịch nhƣ: hình ảnh, video, hay địa điểm liên quan đến nơi mà ngƣời dự định hay Tham khảo địa điểm, nhà hàng, khách sạn hay tour du lịch cho địa điểm Bình luận hay đánh giá địa điểm, nhà hàng, khách sạn Nguyễn Thành Phƣớc – 11T2 41 Xây dựng mạng xã hội sử dụng Laravel Frameword Tích hợp tìm kiếm vị trí google map hỗ trợ ngƣời dùng xác định vị trí Nhƣợc điểm: Cần bổ sung thêm việc chat ngƣời dùng với nhau, mở rộng thêm việc đặt tour du lịch cho ngƣời dùng Có thể thêm việc tạo nhóm nhỏ giao lƣu với nhau, tạo chuyến phƣợt đến địa điểm đó,… Tôi hoàn thành chức qua lần cập nhật 3.5 KẾT CHƢƠNG Hoàn thành website tiến hành kiểm thử phổ biến trang web, nhƣ môi trƣờng triển khai website Tổng kết kết đạt đƣợc, việc chƣa đạt đƣợc Nguyễn Thành Phƣớc – 11T2 42 Xây dựng mạng xã hội sử dụng Laravel Frameword CHƢƠNG 4: KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN 4.1 KẾT QUẢ ĐẠT ĐƢỢC Trong thời gian tìm hiểu, nghiên cứu sở lý thuyết triển khai ứng dụng công nghệ, đồ án đạt đƣợc kết sau: Về mặt lý thuyết: đồ án tìm hiểu giới thiệu rõ ràng Framework Laravel Tìm hiểu rõ mô hình MVC, dựa lý thuyết mô hình MVC thực hành xây dựng ứng dụng Về mặt thực tiễn ứng dụng: đồ án xây dựng đƣợc website “Mạng xã hội du lịch ” với chức nhƣ: tìm kiếm, cập nhật trạng thái, trò chuyện, tìm kiếm vị trí sử dụng google map, xem địa điểm du lịch hay nhà hàng khách sạn mà ngƣời dùng đăng, xem tour du lịch có sẳn admin đăng Tuy nhiên, đồ án tồn vấn đề nhƣ sau: Vấn đề chƣa chat đƣợc ngƣời dùng, cần phát triển thêm Cần việc tạo nhóm thành viên để bàn đăng đăng nhóm 4.2 HƢỚNG PHÁT TRIỂN Một số số hƣớng nghiên cứu phát triển đề tài nhƣ sau: Phát triển thêm chức đặt tour du lịch Mở rộng chức tìm kiếm Phát triển việc chat giữ ngƣời dùng với Phát triển giao diện đẹp mắt Nguyễn Thành Phƣớc – 11T2 43 Xây dựng mạng xã hội sử dụng Laravel Frameword TÀI LIỆU THAM KHẢO Internet [1] http://kungfuphp.com/laravel-framework-5/cai-dat-laravel-5.html [2] http://hocphp.info/laravel-framework-huong-dan-cai-dat-va-chay-ung-dungdau-tien/ [3] https://laravel.com/docs/5.0 [4] http://thietkeweb9999.com/blogs/thiet-ke-website/1476-khai-niem-mohinh-mvc-trong-php [5] http://www.ahdsoft.com.vn/su-dung-ma-hoa-password-bcrypt-cua-zf.html Nguyễn Thành Phƣớc – 11T2 44