Food Ordering System in PHP CodeIgniter with Source Code

A fully functional project based on Online Food Ordering System which uses PHP Language with CodeIgniter Web Framework. Following PHP CodeIgniter project contains all the essential features which can be in use for the first-year, second-year, and final year IT students for their college projects. It has a number of features that will allow the users to interact in a way that other online food ordering store interacts with their customers. This system as well as the web application’s concept is all clear, it’s the same as real-life scenarios and well-implemented on it. To download free food ordering system project in PHP CodeIgniter Framework with source code files, please scroll down to the bottom of this post for the Download button.

About Food Ordering System Project

Moving on, this online food ordering system project in PHP CodeIgniter focuses mainly on dealing with customer’s food order lists as users can browse available food items and add them to the cart for checkout procedure. Also, the system displays all the available restaurants with their menus on the client-side with their respective photos. In addition, the system lists out all the available restaurant’s descriptions with their opening hours and locations. This project is divided into two categories: Admin Panel and Client-Side. In an overview of this website, the user needs an account in order to place the order. Talking more about the project, the user can simply select food items, and add them to their respective cart. Under the customer’s cart section, the system displays the total amount and allows the user to proceed towards checkout. For purchase checkout, he/she can also change the shipping details too.

Customer Panel

After registration, the user can view and update his/her profile. From here, the user can view their orders list which displays all the recent orders with order histories. The history section consists of the food item’s name, quantity, price, order status, and total bill amount. The orders section allows under to track their food orders to check if it’s arriving any soon or later. In addition to it, the user can also cancel their order once after placing it. The system constantly updates this section as soon as his/her order’s status changes. Once the order completes, the customer can view each item’s invoice receipt which contains the restaurant’s name, food item, quanity, shipping details with other billing details.

Admin Panel

On the other hand, an admin panel is a must for an online food ordering system project where it allows control of the whole system. Similarly, in this project, an admin has all the access to the system. He/she can view the total number of customers with their details, restaurants, categories, food menus, orders and manage them accordingly. The admin dashboard represents all this information in figures with extra information like pending orders, completed orders, and rejected orders. The admin has the right to manage customers and add them by entering his/her name, email, username, and password. Also, an admin can add new restaurant details by providing name, telephone number, website URL, opening hours, address, category, image. Similarly, with a category, the user just has to provide a name to it. Not just it, the admin can manage food items by entering item name, short description, price, image, restaurant’s name.

Order Management

In terms of food order management, the admin has full access to it. The system displays all the orders list under the orders section where the admin can handle them with ease. Each section contains customer’s username with their respective food item name, quantity, price, order status. From there, the admin can take action by selecting any and changing their current order status to processing, delivered, or rejected. With an instant change in orders, the user can view the changes too from their own orders section. All the customer’s available orders can also be deleted by the admin. Additionally, the system also calculates the total numbers of orders from various food items and total sales from the available restaurants. These informations are also shown in the admin dashboard in the form of a table.

Last but not least, a clean and simple dashboard is presented with various color combinations for greater user experience while using this food ordering system project in PHP CodeIgniter Framework. For its UI elements, a free open-source CSS framework; Bootstrap is on board with some Vanilla CSS too. Presenting a new online food ordering system project in PHP CodeIgniter which includes client-side with an admin panel that contains all the essential features to follow up, and a knowledgeable resource for learning purposes.

Available Features:

  • Admin Panel
  • Client-Side
  • Food Cart System
  • Update User Profile
  • Food Menu
  • Restaurant Selection
  • Track Orders
  • Search Records
  • Invoice Receipts
  • Manage users, restaurants, categories, and menu
  • Order Management
  • Reject Orders
  • Restaurant and Dishes Reports
Project Name:Food Ordering System CodeIgniter
Language/s Used:PHP with CodeIgniter Web Framework
PHP version (Recommended):7.4.12
Type:Website, Web Application
Developer:Rahul Shewale
Online Food Ordering System – Project Information

Instructions: How to Run?

  • After you finish downloading the project, unzip the project file and head over to your XAMPP directory.
  • There you’ll find a folder naming “htdocs”.
  • Inside the “htdocs” folder, paste the project folder (not the .zip one, but the extracted one).
  • Open your favorite browser; we recommend using Google Chrome or Mozilla Firefox.
  • Then, go to URL “http://localhost/phpmyadmin“.
  • Create a Database with a name that is provided inside the “01 LOGIN DETAILS & PROJECT INFO.txt”.
  • Click on the “Import” tab and choose the database file (.sql) which is provided under the folder naming “DATABASE FILE”.
  • After setting up all these, go to URL “http://localhost/[ ENTER_PROJECT_FOLDER_NAME_HERE ]
  • All the login details are provided inside the project folder, check that out and enter in order to use it.

And there you have it, a full setup of Food Ordering System project in PHP CodeIgniter. For this particular PHP project, PHP Version 7.4.12 is required because the project might not operate well with the old PHP version. So, users with the oldest PHP version (less than v7) might face various problems while operating it. As a result, you’ll need to upgrade your PHP version (only if you’re using the oldest version) at the moment. Download Free Food Ordering System Project in PHP MySQL CodeIgniter with Source Code. So, this food ordering system is a fully functional project for all the beginner as well as the intermediate levels that broads vast knowledge into such PHP web applications. In conclusion, this whole PHP project with free source code is an absolute project and a meaningful way for the users to learn and explore more about it.

Free Download Food Ordering System Project in PHP CodeIgniter with Source Code:
Click the Download Button Below to Start Downloading

Note: Only for Educational Purpose


  1. Hello, I really love this! But I have some problems. I’m a beginner in this stuff so I don’t really know much. How can I change the title of the website? Like right now it’s “Food Ordering System” How do I change it to something else? And also how can I change the currency? Thank you in advance!

    1. for the title, application > views > front > partials > header, and in terms of currency please go through the code lines under model, views, and controller

    1. for the title, application > views > front > partials > header, and in terms of currency please go through the code lines under model, views, and controller

  2. hey, I was trying to run this but it’s not opening as shown in the video it shows an error Uncaught ReferenceError: $ is not defined at index.php:48
    what should I do now?

        1. then maybe it’s due to your PHP version (if you’re using old versions), we recommend using PHP 7+ for this particular project as mentioned in the overview table.

  3. Good Day! I was trying your Food Ordering System and I registered and then proceeded in the Login page. If I input a wrong password it will show the error message but it still has the success message 🙁 Can you help me fix that? Thankyou

      1. I successfully create a new working page and change the default_controller to that page because I want it as first page to appeared. But after I change it, I cannot access to admin site, do you have any idea how to fix it?

  4. Bonjour svp je voudrai savoir comment changer le mot de passe d’admin et pourquoi au moment d’une creation de menu l’image téléchargée n’est pas disponible sur le menu ? merci d’avance!

  5. Hello please, I would like to know how to change the administration password and why when creating a menu the associated image is not available on the menu? Thank you in advance!

    1. there’s no feature that will let you change the password from the system. if the image does not appear after creating, please check if the mentioned folder is present within the project or not

      1. Hello ! ok thank you very much for your understanding and thank you once again for this immense help towards the youth of the computer world, may god reward you. (I learned a lot with you and I am satisfied thank you)

  6. Hello please, I can’t access the admin dashboard with this info
    **Admin Login Details**
    Username: admin
    Password: admin
    Should you show me how to fix it. Thank you.

          1. I also encountered this problem I didn’t touch anything the customer login is ok. I’m using php v. 8

  7. Hello, this project is amazing! May I ask if I can use this project as guide for my capstone research project in our school? Thank you in advance.

  8. Hello, I encounter an error when I try to click download report from admin page.

    Severity: Warning

    Message: require_once(C:\xampp\htdocs\foodienator\application\libraries/tcpdf/tcpdf.php): failed to open stream: No such file or directory

    Filename: libraries/Pdf.php

    Line Number: 5

    Ps. I didn’t change anything in the project, I’m just testing out the functionalities of the project. Thank you so much btw!

  9. good day sir, this program is working properly, but may I know how to increase or disable the time limit of every user who logged in?

          1. Not sure about it, but I think you can
            – Open the php.ini file and check this following line,
            session.auto_start =Off
            session.auto_start ="0"

  10. Please help…
    I wanted to change admin password but after changing the password I couldn’t login into the admin panel. It shows that the username and password do not match.
    what do I do now?
    It’s very important for me to change the admin password because it’s a task for me from my teacher.

    1. Well, there ain’t such feature in the system that’ll let you change the password of an administrator. So, I guess you might have customized that certain portion yourself! In that case, the very first step is to know about the system’s used method of password encryption (md5, sha1, etc) Please have a look at it and make sure to arrange those encryption lines while requesting for password change.

      1. I have changed everything except for the header of admin panel and the title. I coudn’t find its code for changing the color

          1. these were the codes, where in here? thank you in advance

            <a class="navbar-brand" href="”> Admin Panel

  11. A PHP Error was encountered

    Severity: 8192

    Message: Return type of CI_Session_files_driver::close() should either be compatible with SessionHandlerInterface………….

    1. This looks like an error coming from your LATEST version of PHP. This particular project is tested only with PHP 7.4, so the latest PHP 8 might create these problems. Still, you can find related solutions for these problems online!

  12. Hi thank you for this source code, big help in our web system subject.. but how to change it to Online not offline .. and how to change the image? my instructor wants to see it.

    1. If you’re referring to the landing page images, then simply go through the code lines and make changes with the image name (after copying image files into the project folder), and if you’re referring it to the food menu images, then you can update items and images from the admin panel.

  13. can I use this as my second-year project (educational purpose) plus if I change the pictures, names, etc…I’ve to change the SQL file right? just wants to confirm. thanks in advance.

      1. thank you for replying. may I know what kind of techniques and technologies has been used in this?
        I know that SQL and PHP with the framework are mentioned above. is HTML and CSS is there too? just confirming.

          1. all the files are important right, is there any unnecessary files that can be removed? even after zipping it’s 15.2MB and cannot be dragged to one drive to share it with the lecturer… could you please assist on this matter? would be a great help

          2. Yes, each file is important. But, the image folder alone occupies around 6-7 MB of storage, so either reduce the size of whole images OR remove the whole images (by removing it, you won’t be able to see any images on the system and requires re-uploading images).

  14. Hello, will be using this as my educational purpose, since this has only cash on delivery and simplicity, I want to create a clothing website using. therefore I wanna change **dish** name in the shopping cart, I went to application\views\front and clicked cart.php and tried to change but didnt work out tho, please help mee

  15. the food ordering system with php and codeigniter it respond with php erro encounted in different lines

  16. Hi, please help me, I can’t login to the admin page, it said “Either username or password is incorrect” but I didn’t have to touch and change anything.

        1. Looks like you haven’t watched the full demo video. Please do watch it, you’ll know how to use the system properly (regarding the customer and admin panel)!

  17. I downloaded the tcpdf file you mentioned but it still saying the same can you give me a complete instruction please? btw I like your work sir very good but Id like to have the tcpdf thanks in advance

  18. Fatal error: Uncaught TypeError: error_reporting(): Argument #1 ($error_level) must be of type ?int, string given in C:\xampp\htdocs\Car-Rental-Syatem-PHP-MYSQL-master\header.php:3 Stack trace: #0 C:\xampp\htdocs\Car-Rental-Syatem-PHP-MYSQL-master\header.php(3): error_reporting(‘E-NOTICE’) #1 C:\xampp\htdocs\Car-Rental-Syatem-PHP-MYSQL-master\index.php(21): include(‘C:\\xampp\\htdocs…’) #2 {main} thrown in C:\xampp\htdocs\Car-Rental-Syatem-PHP-MYSQL-master\header.php on line 3

    This error is showing. Can you help?

  19. Salut ,c’est simplement joli le projet…
    J’utilise PHP version 7. Là j’ai accès à l’interface utilisateur mais pas à celle admin bien que les informations d’accès mentionnées sont respectée… Veuillez m’aider svp

    1. It looks like you’ve entered the admin credentials under the customer login panel. So, that’s the reason you’re facing that issue. You need to go to the admin login panel and enter the given login credentials in order to access the administrator panel. For more: please watch the full video, it’ll guide you throughout the system.

  20. A PHP Error was encountered
    Severity: 8192

    Message: Return type of CI_Session_files_driver::open($s ave_path, $name) should either be compatible with SessionHandlerInterface::open(string $ path, string $ name): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice

    Filename: drivers…………………………….

    1. This looks like an error coming from your LATEST version of PHP. This particular project is tested only with PHP 7.4, so the latest PHP 8 might create these problems. Still, you can find related solutions for these problems online!

  21. i changed the project name in config.php is other place should i change?
    becouse my project dont work after i change foldername

  22. Severity: 8192

    Message: Creation of dynamic property Home::$router is deprecated

    Filename: core/Controller.php

    Line Number: 82


    File: C:\xampp\htdocs\foodienator\foodienator\index.php
    Line: 315
    Function: require_once
    this is the error

  23. heyy,
    how can i add the table number section in this website ive tried but it is showing undefined array
    plzz helpp

    1. CSS files are inside the directory “assets/css”. If you’re unable to view the CSS in your browser while running this project, then it is because you’ve changed the name of project’s folder without any configuration.

    1. CSS files are inside the directory “assets/css”. If you’re unable to view the CSS in your browser while running this project, then it is because you’ve changed the name of project’s folder without any configuration.

  24. your system folder path does not appear to be set correctly. Please open the following file and correct this : index.php
    how clear this error and how run the project?

    1. Make sure that the system folder path is correctly set in the index.php file. Open index.php and verify that the $system_path variable points to the correct location of your CodeIgniter system folder. Once corrected, you should be able to run the project.

Leave a Reply

Your email address will not be published. Required fields are marked *