Car Sharing System in PHP Free Source Code For BE, BTech, BCA, MCA, Diploma and MSc Students
1. Project Description
Car Sharing System is an application where people going in the same direction to share their cars. The aim of this system is to bring people together on the same platform and provide safe, cheap and effective ways to share cars. With this system, drivers can create a trip saying which location they are going to go at a specific time and through which route they are going to do so. The passengers can enter a location and see all the relevant trips destined to that location. Passengers need to make a reservation for a trip to participate in that trip. The driver has the option to accept or decline the passenger.
After a trip is done, the passengers can rate the drivers and other passengers and the driver can rate their passengers. Both can also write reviews about them anonymously. The payments are done beforehand and can be refunded if the driver does not show up or the passenger cannot attend due to some reasons. The system has a customer service which helps the customers to solve their problems with the trips and the refunds. The information of the customers is protected.
People can only see the reviews and rates of each other before making a reservation. After the reservation is done and the passenger is accepted by the driver, their contact information becomes available to each other. There are multiple locations a passenger can get in or get out and will be charged accordingly. The driver can set up mid stops on the route and charge those stops differently. Also, the driver is responsible for estimating the trip’s time and will set up a price for the trip according to the estimated time and trip length.
2. Why/How a Database is going to be used
The aim of this project is to provide a database application for the Car Sharing System to make data management easy. As this is a complicated system, a well-designed database is needed. There are many passengers, drivers, ratings, reviews, trips, vehicles, locations, routes, time and cost information to manage, therefore an automated database system is needed for this Car Sharing System. This database application is going to handle query operations, data entries, and updates.
3.1 Functional Requirements
Users should be able to
modify their personal information, register their car and become a driver. search for trips with specific start and end location. search for trips within the specific time frame. make a reservation to an available seat on a hosted trip. cancel their reservation. see driver’s personal information such as phone number after their registration is approved by the driver. rate drivers and other passengers if they have been on the same trip. see driver’s rating before making a reservation for the trip. see trip information such as car information, stop locations, other passengers.
Drivers should be able to
modify the information of their car. post a trip with specific start and end location and start and end time. determine the price for their trip see reservation requests for their trip and approve or cancel the reservations. see passengers’ personal information such as phone number after approving their registration. rate the passengers if they have been on the same trip. see passengers’ ratings if they have made a reservation request.
3.1.3 Customer Service
Customer service should be able to
see drivers car information. user’s personal information search for trips with specific start and end location. search for trips within a specific time frame. see a trip’s information
3.1.4 System Requirements
The system should be able to
block reservations after the capacity of a trip is full. block reservations 1 hour before the starting time of a trip. verify user’s email. limit the unverified users’ functionality with the only search for trips.
3.2 Non Functional Requirements
3.2.1 Quick Response Time & Scalability
The system should be able to fast and scalable. Since there will be searches and posting new data, the system should be able to handle searches and database modifications as fast as possible.
3.2.2 User Friendliness
The system should provide an easy-to-use interface. The system should guide new users and show the features of the system.
3.3 Pseudo Requirements
- MySQL is used for the database.
- PHP will be used for the backend.
People can search for trips but they need to login to their user account in order to reserve a trip or host one.
Only the users with a validated car, a car that is registered in their name, can host a trip. This information will be collected from the traffic database.
A driver needs to accept a passenger’s reservation in order to confirm the reservation. A driver needs to specify where he is going and where he is willing to stop (to pick up people) when creating a new trip.
When a vehicle’s capacity is filled users cannot reserve a place for that trip. Drivers can only write reviews about passengers they drove, Passenger can write a review about the driver and the passengers they took a trip with.
Users will have different reviews for their driver and passenger behaviors. When a user is deleted his/her vehicle will also be deleted.