Skip to content

This PHP and MySQL-based project is designed to manage a cricket tournament with user and admin functionalities. It allows users to sign up, view tournament scorecards and enables admins to manage matches.

Notifications You must be signed in to change notification settings

siddheshrm/scorecard

Repository files navigation

Cricket Tournament Management System

This PHP and MySQL-based project is designed to manage a cricket tournament with user and admin functionalities. It allows users to sign up, view tournament scorecards and enables admins to manage matches.

Features

User Registration and Authentication:

a) New users can sign up by entering a unique username, age, email and password. b) User authentication ensures secure access to the system.

User Dashboard:

a) Upon login, users can view the scorecard of the entire tournament.

Admin Privileges:

a) Admin user has special access rights, including creating new matches, updating match details, and deleting existing matches if necessary.

Password Recovery Feature:

a) The Password Recovery feature allows users to reset their forgotten passwords, implemented using PHPMailer. Upon entering their registered email address, users receive an email with a unique reset link, valid for 15 minutes. b) This link directs them to a page where they can create a new password. This feature also supports dynamic email content, greeting users by their registered name.

Additional Features:

a) Strike Rate Calculator - calculates the strike rate of each batsman based on the number of balls faced and runs scored. b) Duckworth Lewis Calculator - calculates par score in rain-affected matches. c) Cricket Trivia - Fetches cricket trivia from a custom API hosted on Heroku. The trivia is fetched automatically based on the date of the month to showcase basic knowledge of REST APIs.

Technologies Used

PHP, MySQL, HTML, and JavaScript.

Scorecard Calculations

a) Ranks teams primarily based on points, and secondarily based on NRR. b) The scorecard is designed to update in such a way that, it calculates the Net Run Rate of each team based on the number of overs and balls played, wickets lost and runs scored. (Net Run Rate is calculated differently based on whether the team gets all out.) c) Updates scorecard including matches played, wins, losses, tied matches, points, and NRR.

The Net Run Rate (NRR) calculation

Formula :

Overs played = overs played + (balls played/6) For = (number of runs scored/number of overs played) Against = (number of runs conceded/number of overs bowled) Net Run Rate = For - Against

Conditions handled while calculating NRR :

a) Zero Runs: If runs scored are zero, overs are set to 20 and balls to 0 for that particular team. b) All Wickets Lost: If all 10 wickets are lost, overs are set to 20 and balls to 0 for that particular team. c) Inning 1 Specific: If the team did not complete 20 overs without losing all wickets, overs are set to 20 and balls to 0. d) Inning 2 Specific: If the team batting second scored fewer runs than the first inning and did not lose all wickets, overs are set to 20 and balls to 0. e) Inning 2 Specific: If the team batting second won without facing any legal delivery, overs are set to 0 and balls to 1 to avoid division by zero error in NRR calculations. f) General Case: In all other cases, actual overs and balls played are used to calculate NRR.

All possible conditions when updating existing match data and changes in the points table have been thoroughly handled

a) Match result remained the same, change in NRR for both teams. b) Match result overturned, changes in points, wins, losses, NRR for both teams. c) Match result changed to tied, changes in points, wins, losses, NRR. d) Match result remained tied, changes in match details. e) The match result changed from tied to having a clear winner, changes in match details and points table.

Please Note

a) Only a single user has admin privileges to edit scorecards. b) The project does not focus on making the site fully responsive.

Upcoming Implementations

a) User Privileges To Update: Instead of only admins being able to update the scorecard, all users will be able to update the scorecard in upcoming versions. b) Handling 'No Result' Matches: Currently, only tied matches are handled. Handling 'no result' matches (matches not completed due to rain or any other circumstances) will be implemented in a later stage.

Hosting

The web application is hosted at: https://scorecard.siddheshmestri.online

About Me

You can learn more about me and my other projects on my personal portfolio website at https://siddheshmestri.online

Below are screenshots of the web-app

Home/Login page : Home/Login page Register page : Register page Forgot Password page : Forgot Password page Reset Password page : Reset Password page User dashboard : User dashboard Admin dashboard : Admin dashboard Create match page (admin) : Create match page Update match page (admin) : Update match page Edit match page (admin) : Update match page Tournament management page (admin) : Tournament history page Strike rate calculator page : Strike rate calculator page DLS par score calculator page :DLS par score calculator page

About

This PHP and MySQL-based project is designed to manage a cricket tournament with user and admin functionalities. It allows users to sign up, view tournament scorecards and enables admins to manage matches.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published