CHƯƠNG I. PHÂN TÍCH VÀ XÁC ĐỊNH YÊU CẦU 1. Phân tích yêu cầu đề tài 1. Tên đề tài + Xây dựng “Website cho thuê xe ô tô Online Car Online Car Rental”.
Lý do chọn đề tài + Hiện nay, Nhu cầu mua hàng của khách hàng ngày càng tăng cao, đặc biệt các người có ít thời gian để đi ra ngoài mua trực tiếp vì thế họ có thể đặt các sản phẩm và được giao trong thời gian nhanh nhất mà không cần tốn công đi mua sản phẩm. Giúp khách hàng tiết kiệm thời gian và có thể nghỉ ngơi và thư giãn. + Việc mua sắm trực tuyến đang được mọi người ưa chuộng vì nó tiết kiệm thời gian, không tốn công đến cửa hàng, có thời gian nghiên cứu các sản phẩm, lựa chọn đa dạng, chủ động hơn. + Vì vậy nhóm chúng em quyết định xây dựng “Website cho thuê xe ô tô Online Car Rental” để đáp ứng nhu cầu của khách hàng 1.
Ý nghĩa thực tiễn + Website được xây dựng để áp dụng thành tựu của công nghệ thông tin vào lĩnh vực thương mại. + Sự ra đời của website này không chỉ giải quyết những khó khăn của các cửa hàng truyền thống mà còn mang l ại kiến thức, thông tin đến với mọi người một cách nhanh chóng và tiện lợi. + Với website này khách hàng sẽ được bảo mật hoàn toàn về thông tin cá nhân. Bên cạnh đó cửa hàng sẽ dễ dàng hơn trong việc quảng bá hình ảnh của mình đến với mọi người, ở mọi nơi và trên nhiều phương tiện.
Phương pháp nghiên cứu + Khảo sát thị trường website cho thuê xe ô tô ở trên Google. + Thu thập các yêu cầu, nhu cầu từ phía khách hàng. + Đưa ra những công nghệ mới giúp cho trang web tiện nghi và dễ sử dụng. + Phân tích thiết kế hệ thống theo yêu cầu của người dùng.
+ Nghiên cứu các công cụ xây dựng hệ thống. Tổng quan về bài toán 1. Đưa ra bài toán Cửa hàng cho thuê xe ô tô Online Car Rental muốn có một website để quảng bá rộng rãi thương hiệu của mình cũng như muốn tăng thêm thị trường mua bá n để thu lại nhiều lợi nhuận hơn. Chủ của hàng ô tô Online Car Rental phải phù hợp các tiêu chí như đẹp, thu hút được khách hàng, dễ sử dụng, dễ quản lý các đơn đặt hàng, người dùng,… 1.
Liệt kê chức năng Đây là website giới thiệu và quản lý sản phẩm của cửa hàng đến người sử dụng nên có các chức năng sau: + Đăng nhập + Đăng ký + Đổi mật khẩu + Cập nhật thông tin 1 0 0 + Đánh giá + Hiển thị thông tin đánh giá + Đặt xe + Hiển thị thông tin đặt xe + Phản hồi + Theo dõi trang + Hiển thị thông tin xe + Thêm thương hiệu + Quản lý thương hiệu + Đăng thông tin xe + Quản lý thông tin xe + Quản lý người dùng + Quản lý đơn đặt + Quản lý theo dõi + Quản lý phản hồi + Quản lý nội dung + Quản lý đánh giá 1. Công nghệ sử dụng 1. Giới thiệu về PHP PHP là viết tắt của Hypertext Preprocessor, ngôn ngữ lập trình PHP được sử dụng để xây dựng các website và ứng dụng web. PHP là ngôn ngữ k ịch bản làm việc trên server với nhiệm vụ là kết nối cơ sở dữ liệu và thực hiện các các chức năng của web hoặc ứng dụng web.
PHP dễ dàng được nhúng vào HTML qua cặp thẻ <?php … ?>, khi chạy PHP sẽ sinh ra các mã HTML để trả về cho phía người dùng. PHP là một ngôi ngữ lập trình cực kỳ phổ biến khi phát triển website và các ứng dụng Web do khả năng tương thích cao với các trình duyệt và là một ngôn ngữ mềm dẻo linh hoạt khi giải quyết các vấn đề. Hình 1 Biểu tượng của ngôn ngữ lập trình PHP 2 0 0 Ưu điểm của PHP: + Ưu điểm quan trọng nhất của PHP chính là nguồn mở và miễn phí. Nó có thể được tải xuống bất cứ nơi nào.
Sẵn sàng để sử dụng cho việc phát triển các ứng dụng web. + Nó là nền tảng độc lập. Các ứng dụng dựa trên PHP có thể chạy trên mọi hệ điều hành như UNIX, Linux và Windows, v. + Ứng dụng dựa trên PHP có thể dễ dàng được tải và kết nối với cơ sở dữ liệu.
Nó chủ yếu được sử dụng vì tốc độ tải nhanh hơn trên Internet chậm và trong nhiều trường hợp, PHP có tốc độ cao hơn với nhiều ngôn ngữ lập trình khác. + PHP là dễ học cho người mới bắt đầu, nó cũng đơn giản và dễ sử dụng. Nếu một người biết lập trình C căn bản thì có thể dễ dàng học và làm việc với PHP. + Nó ổn định hơn từ nhiều năm với sự giúp đỡ của việc cung cấp hỗ trợ liên tục cho các phiên bản khác nhau.
Từ phiên bản 5 trở lên PHP đã hỗ trợ thêm các đặc tính về Lập trình hướng đối tượng OOP + Lập trình web với PHP có ưu điểm là code ngắn, cấu trúc đơn giản. Điều này cũng giúp dễ dàng quản lý mã nguồn hơn. + PHP hỗ trợ nhiều thư viện mạnh mẽ để dễ dàng mô-đun chức năng cho việc biểu diễn dữ liệu. + Các mô-đun kết nối cơ sở dữ liệu được tích hợp sẵn trong PHP.
Từ đó giảm công sức và thời gian để phát triển website. Giới thiệu về Lararel Laravel là một PHP Framework mã nguồn mở miễn phí, được phát triển bởi Taylor Otwell với phiên bản đầu tiên được ra mắt vào tháng 6 năm 2011. Laravel ra đời nhằm mục đích hỗ trợ phát triển các ứng dụng web, dựa trên mô hình MVC (Model– View – Controller). Laravel hiện được phát hành theo giấy phép MIT, với source code được lưu trữ tại Gitthub.
Mặc dù ra đời muộn hơn so với các đối thủ, tuy nhiên Laravel đã thật sự tạo thành một làn sóng l ớn, được đánh giá tốt và sử dụng rộng rãi nhất hiện nay. Biểu đồ dưới đây cho thấy sự tăng trưởng về số lượng sao trên Github của Laravel so với các Framework khác. 3 0 0 Hình 2 Biểu tượng của framework Larevel Lý do nên chọn Laravel: + Bắt đầu dễ dàng. + Lý do đầu tiên phải kể đến chính việc Laravel có thể sử dụng cực dễ dàng cho người mới bắt đầu, kể cả khi bạn chỉ biết sơ về PHP, bạn vẫn có khả năng phát triển 1 website với 5 trang trong vòng vài giờ.
+ Có mã nguồn mở + Framework Laravel với mã nguồn mở miễn phí, cho phép bạn xây dựng ứng dụng web lớn và phức tạp một cách nhanh chóng, dễ dàng. + Tất cả điều bạn cần làm ở đây là cài đặt PHP, cộng với một trình soạn thảo văn bản để bắt đầu. + Hỗ trợ cộng đồng + Trường hợp bạn mắc kẹt với những bug khó nhằn, nhưng có người đã trải qua và hướng dẫn bạn thì không còn gì tuyệt hơn. + Laravel có một hệ thống thư viện hỗ trợ vô cùng lớn và mạnh hơn hẳn các Framework khác.
Nếu bạn report lỗi hoặc vi phạm bảo mật trong Framework, phản hồi của cộng đồng sẽ rất nhanh chóng. + Theo dõi MVC + Cấu trúc MVC và l ập trình hướng đối tượng OOP vẫn được giữ lại trong Framework Laravel, giúp cung cấp tài liệu tốt hơn, và tăng hiệu suất hơn. + Được xây dựng dựa trên những Framework hiệu quả nhất 4 0 0 + Vì ra đời muộn nên Laravel được thừa hưởng những ưu điểm và thế mạnh của Framework khác, khi có phần route cực mạnh. Ví dụ điện hình là Laravel sử dụng một số thành phần tốt nhất của Symfony.
+ Di chuyển Database dễ dàng + Di chuyển Database là một trong những tính năng trọng yếu của Laravel. Nó cho phép bạn duy trì cấu trúc cơ sở dữ liệu ứng dụng mà không nhất thiết phải tạo lại. + Di chuyển Database còn cho phép bạn viết mã PHP để kiểm soát Database, thay vì sử dụng SQL. Nó còn cho phép bạn khôi phục những thay đổi gần đây nhất trong Database.
+ Tính năng bảo mật hoàn thiện + Ứng dụng của bạn sẽ an toàn khi dùng Framework Laravel. Kỹ thuật ORM của Laravel sử dụng PDO, chống chèn SOL. + Ngoài ra, tính năng bảo vệ crsf của Laravel giúp ngăn chặn giả mạo từ yêu cầu trang chéo. Đó là cú pháp tự động thoát bất kì HTML nào đang được truyền qua các tham số xem, nhằm ngăn chặn kịch bản chéo trên trang web.
Giới thiệu về Xampp Xampp là ứng dụng dùng để thiết lập và điều hành máy chủ nội bộ (localhost). Đây còn là chương trình tạo máy chủ Web (Web server) được tích hợp sẵn Apache, PHP, MySQL, FTP Server, Mail Server và các công cụ như phpMyAdmin. Xampp cho phép bạn giả lập môi trường server hosting, để chạy thử (demo) một website ngay trên máy tính cá nhân mà không cần phải mua hosting hay VPS. 5 0 0 Hình 3 Biểu tượng của phần mềm Xampp Ưu điểm của Xampp: + Chạy được trên tất cả các hệ điều hành: Cross-platform, Windows, Mac OS, Solaris và Linux.
+ Cấu hình Xampp đơn giản, nhiều chức năng hữu ích cho người dùng. Ví dụ: giả lập Server, giả lập Mail Server, hỗ trợ SSL trên Localhost… + Tích hợp nhiều tính năng: Apache; PHP tạo môi trường chạy các tập tin script *.php; MySQL hệ quản trị dữ liệu. Thay vì phải cài đặt từng thành phần này, chúng ta chỉ cần cài XAMPP là có ngay 1 web server hoàn chỉnh. + Mã nguồn mở: Xampp có giao diện quản lý tiện dụng.
Người dùng có thể chủ động bật tắt hoặc khởi động lại các dịch vụ máy chủ mọi lúc mọi nơi. Giới thiệu về MySQL MySQL là một hệ thống quản trị cơ sở dữ liệu mã nguồn mở (gọi tắt là RDBMS) hoạt động theo mô hình client-server. Với RDBMS là viết tắt của Relational Database Management System. MySQL được tích hợp apache, PHP.
MySQL quản lý dữ liệu thông qua các cơ sở dữ liệu. Mỗi cơ sở dữ liệu có thể có nhiều bảng quan hệ chứa dữ liệu. MySQL cũng có cùng một cách truy xuất và mã l ệnh tương tự với ngôn ngữ SQL. MySQL được phát hành từ thập niên 90s.
6 0 0 Hình 4 Biểu tượng của phần mềm MySQL Ưu điểm của MySQL + Dễ sử dụng: MySQL là cơ sở dữ liệu tốc độ cao, ổn định, dễ sử dụng và hoạt động trên nhiều hệ điều hành cung cấp một h ệ thống lớn các hàm tiện ích rất mạnh. + Độ bảo mật cao: MySQL rất thích hợp cho các ứng dụng có truy cập CSDL trên Internet khi sở hữu nhiều nhiều tính năng bảo mật thậm chí là ở cấp cao.