
Learn to build a php mysql inventory pos app with barcode, including barcode generation and thermal receipt printing, and set up the admin dashboard template version 3.2.0.
Explore the admin bootstrap dashboard template, including widgets, charts, forms, modals, alerts, data tables, login and registration pages, and starter or blank pages for project integration.
Download and install XAMPP server on Windows 11 to run Apache and MySQL, enabling localhost access and phpMyAdmin for creating databases and organizing your project folder.
Learn to download and install visual studio code on Windows 11, with Mac OS and Linux options, complete the setup, choose a dark theme, and prepare extensions for coding.
Create a new pos barcode folder in the Xampp docs directory and copy files from admin three, then start Apache and MySQL to access localhost.
Create a database named POS_barcode_db and a tbl_user table with columns user_id, username, user_email, user_password, and role, using user_id as auto_increment primary key, then insert the first admin entry.
Design a login page for the barcode POS web app by adapting the admin dashboard login code into index.php and configuring CSS and jQuery paths.
Install essential VS Code extensions for PHP, HTML, CSS, and JavaScript to boost IntelliSense, debugging, and formatting, including PHP IntelliSense, PHP Debug, HTML/CSS support, and MySQL support.
Create a dedicated UI folder and two PHP files (dashboard.php for admin access and user.php for user tasks), paste starter.html code, and adjust relative CSS/JS paths to run locally.
Create reusable header.php and footer.php components, include them in dashboard.php with include_once, and use a blank.php to share code across pages, reducing duplication and simplifying maintenance.
Create a connect db.php file to establish a PDO MySQL connection to localhost for POS_barcode_DB with root and no password; test for success and use try-catch to reveal errors.
Build a PHP login page with a two-part UI, a form posting email and password via post, start a session, and prepare database authentication for user login.
Fetches user email and password from login fields, uses a PDO prepared select against the user table to verify credentials, and redirects to ui/dashboard.php on success.
Resolve login errors in the PHP MySQL inventory POS web app by adding an is_array check to validate the user row and redirect to dashboard.php.
Create a multi-user login system using a _user table with admin and user roles, redirecting admin to dashboard.php and user to user.php with separate headers.
Design and refine the dashboard and header for a php mysql inventory barcode pos web app, tailoring menus and layout with bootstrap grid and preparing for session-based user name display.
Use PHP sessions to protect dashboard and user pages by starting a session and storing user id, username, and email in session variables, then redirect unauthorized users to login.
Create logout.php to end user sessions by starting and destroying the session, then redirect to index.php; integrate logout into the header menu and verify access is restricted after logout.
Copy and integrate sweet alert and toast notifications into the login page by importing the sweet alert css and js, using sessions to trigger status messages, and displaying them on index.php.
Enhance the login page with required field validation and sweet alerts, showing messages like please fill out this field, wrong email or password, and login is successful.
Learn how to create and integrate a change password feature in a PHP MySQL inventory web app, including building the change_password.php page, updating the form, and connecting to the database.
Implement a change password workflow in PHP and MySQL, covering retrieving POST inputs, selecting the user by email, comparing the input with database values, and updating the password.
Learn how to retrieve a user's email from the session, query the database with a prepared select statement, and validate credentials on the change password page using PDO.
Replace toast alerts with sweet alert 2 across the login and change password flow by wiring header and footer assets and triggering messages via session.
Validate user input against database values for password change, confirm new password matches retype, and update the password using a prepared statement in PHP with session and sweet alert feedback.
Implements session and role checks to restrict admin access to user.php and change_password.php, redirecting unauthorized users to index.php.
Learn to secure the change password page in PHP by using a session role check to display admin or user headers, and verify with login as admin or user.
Learn to add and update menu items in a PHP MySQL inventory barcode POS web app, including icon updates and navigation for dashboard, category, product, pos, and order list.
Create registration.php to register admins, operators, or users in the point of sale system, reuse code from blank.php, and implement a bootstrap card form with database connection and session start.
Build and display registration data in a PHP MySQL inventory web app by coding a registration form and a table showing user ID, name, email, password, and role using PDO.
Edit a PHP registration form with MySQL backend to add a role select (admin or user), a save button, and a delete option, with table hover effects.
Learn to create a new user record in a PHP and MySQL web app by handling form data, using PDO prepared statements, and displaying success messages with SweetAlert.
Implement a server-side check that prevents duplicate registrations by querying the user table for the submitted email, showing 'email already exists' if found, otherwise inserting based on row count.
Learn to implement a delete button on the registration page, capture the id via GET, execute a delete query, and display success or not deleted messages.
Add session handling and access control to registration.php by copying conditions from change_password.php, remove header, and test login to ensure only admin can access registration.
Create a new category.php page by adapting the registration form, link it in the header, and display a category list with save, edit, and delete actions that save to the database.
Create a MySQL category table (tbl_category) with auto-increment category_id and category field, then implement a PHP insert form that validates input, uses prepared statements, and shows sweet alerts.
Learn to display category data from tbl_category in category.php, implement edit and delete actions, adapt queries to cat_id and category, and apply button styles to manage records.
Learn to toggle between insert and update category forms in a PHP page by clicking edit, using post checks to prefill id and name, and prepare for the update workflow.
Implement category updates in a PHP MySQL inventory web app by editing records, using hidden id fields, prepared update queries, and user feedback for success or failure.
Implement a delete button in PHP using PDO, sending post data, preparing and executing a delete from tbl_category where cat_id equals the button, with success or fail alerts.
Add a data table plugin to the PHP inventory app, enabling search, pagination, and adjustable entries, with header and footer CSS/JS integration for the category table.
Create a new product.php file and design a two-part form using a six-six grid, duplicating category.php styling, and add fields for barcode, product name, category, description, and more.
Designs the add product form by adding a description textarea, stock with min and step, price fields, and image upload, plus a save button for barcode-ready records.
Learn the basics of file and image upload in PHP by building a single page form with multipart/form-data, using $_FILES, and moving uploads to an upload folder with move_uploaded_file.
Learn how to upload images with PHP by validating size and extension, extracting the type with explode and end, normalizing case, and saving with a unique name to prevent overwriting.
Fetch categories from the category table in the database to populate the add product dropdown using a PDO select query, then loop through results to display options.
Create a tbl_product table with nine columns, including pid as auto-increment primary key, plus barcode, product, category, description, stock, purchase price, sale price, and image.
Learn how to save product data and barcode from a scanner into the database using add product.php, including handling text fields, images, and file uploads.
Shows adding a product to a PHP MySQL inventory app by inserting data with prepared statements, handling image uploads, and managing barcode input with alerts.
Learn how to read barcodes with a usb Pegasus barcode reader, scan items, and enter product details—name, category, description, stock, purchase and selling price, and image—in a barcode reading test.
Learn to generate new barcode numbers for products lacking barcodes using PHP, deriving a unique code from the last inserted id and current time, and save it during insertion.
Learn to design a product list page in a php mysql inventory dashboard, fetch data from the product table, and implement print, barcode, view, edit, and delete actions.
Continue building the product list in PHP by adding four action buttons (barcode, view product, add/edit, delete) with icons, tooltips, and a data table plugin.
Implement the data table plugin in the product list page, enable search, pagination, and range dropdown, and add tooltip support for action buttons.
Create a view product page in php, connect it to the product list and header, and display product details and image using bootstrap list group badges.
Resolve errors in the product list and fetch data from the database to display key details—barcode, name, category, description, stock, and prices—in the view product page.
Display product images in the product view of the PHP MySQL inventory app, with responsive images and details like barcode, name, category, stock, prices, and profit.
Add the barcode library to the project, configure barcode 128, and generate and print barcode labels while displaying barcode images alongside product details in the product list.
Create and refine the edit product page in PHP, reuse the add product form, fetch product data by ID from the database, and populate the form for update.
Edit product.php demonstrates retrieving database values for id, barcode, product, category, description, stock, purchase price, sale price, and image, then populating a form with value attributes and a selected category.
Update the product in PHP MySQL inventory by editing product.php, disabling barcode, updating via update query, handling text vs db values, and using sweet alert for feedback.
Update a product with a new image in the PHP MySQL inventory app by handling the image input and updating the query.
Learn to delete a product without refreshing the page using Ajax, as a delete button posts the product ID to product delete.php and hides the row on success.
Integrate sweet alert 2 into the PHP/MySQL inventory app to confirm deletions, paste the code into the delete flow, and verify products are removed from the database.
Learn to implement and customize print barcode functionality in a php mysql inventory app, using prebuilt barcode scripts (barcode.php, barcode128.php, index.php) to generate and print barcode stickers.
Generate barcode stickers by creating print barcode.php, wiring it to the database and session, and integrating the barcode output into the product list and view pages.
Continuing the barcode generator, this video guides updating the form to use barcode fields, toggling read-only inputs, configuring barcode output, and generating printable barcode stickers for a specific product.
Create a tax and discount database table with id, sgst, gst, and discount, design the tax page UI, and implement the tax discount script for the next video.
Develop a text discount page in PHP with sgst, cgst, and discount fields, connected to tbl_text_discount, showcasing data entry, display, and basic insert functionality for tax and discount management.
Demonstrates updating a text discount record in a PHP MySQL app, adjusting id handling, sgst and cgst fields, and refining the edit workflow with validation, format, and success messages.
Create the point-of-sale page (pos.php) for billing in the PHP MySQL inventory app, adding a barcode scanner field and preparing product search with billing totals.
Learn to implement a searchable select box with the select2 plugin in a php mysql inventory pos dashboard, including css/js integration and initializing select2 in post.php.
Create and style the order billing table for a PHP MySQL POS web app, with product, stock, price, quantity, and total columns, and a fixed header with scrollable body.
Fixes errors in the order form, adds subtotal and discount fields with currency signs, implements GST and CGST, and enforces read-only fields.
Build the create order UI for a PHP-based POS by adding total, due and paid fields, payment-type radio buttons, and a save order button with form controls.
Scan barcodes to fetch product data via ajax in a PHP MySQL inventory app, sending the barcode to getproduct.php and displaying results in a table.
Implement and explain the jQuery.inArray method within the Ajax success flow to locate a pid in the product array for the PHP MySQL inventory barcode POS web app.
Watch the instructor build and test a PHP MySQL inventory billing table in a barcode POS web app with a dashboard, scanning barcodes and debugging the jQuery totals.
Explain how barcode scanning increments quantity, computes subtotal and total with price and stock, and uses hidden inputs for live calculation in the PHP MySQL POS app.
Implement jquery-driven stock validation and total calculation for a php mysql inventory pos app. Scan barcodes, enforce stock limits, and update total as price times quantity with alerts.
Implement a searchable dropdown by wiring a PHP server-side function to fetch products from the database and populate the select options with product IDs and names.
Reuse barcode code for the search box with select2 and ajax to fetch products by id, display results in a table, and enforce stock-aware quantity updates with warnings.
Fetch discount and GST values from the database using a PDO select query, display them in form inputs, and prepare the calculate function to show subtotal and total in rupees.
Implement a calculate function to compute subtotal, discount, cgst, total, due, and paid amounts; initialize zeros, and update the user interface using sale price values.
Develop and refine the calculate function to compute discount and cgst on the subtotal, display updated totals, and validate percent-based calculations in the php mysql inventory pos web app.
Implement and test discount function in the PHP MySQL inventory POS web app, handling percent discounts, updating subtotal and total, and wiring discount and paid fields to the calculate method.
Demonstrates implementing a remove button in a PHP MySQL POS app, using data-id and jQuery to delete table rows and update due/return calculations for barcode workflows.
Create two database tables, tbl_invoice and tbl_invoice_details, to store order and billing data. Then prepare to insert data via a save button using phpMyAdmin on localhost.
Learn how to implement the save order button in a PHP MySQL inventory POS app, wiring form submission to insert order data into the invoice and product details tables.
Learn to collect subtotal, discount, GST, total, and payment details from form fields using proper name attributes, then prepare an insert query to save the order into a PHP-MySQL database.
Demonstrates barcode input handling in a PHP MySQL inventory POS app: move barcode field outside the form, and use hidden fields with array attributes to prepare data for database insertion.
Implement an insert operation for a PHP MySQL inventory POS to scan barcodes, populate invoice fields, and bind parameters to insert into the invoice table with subtotal, GST, and total.
Continue building the php mysql inventory barcode pos app by inserting orders into invoice and invoice_details, testing in browser, and handling barcode scanning, quantities, discounts, gst, and cash payment totals.
Insert order data into tbl_invoice and tbl_invoice_details using post values, capture the last insert id to link details, then update product stock by subtracting quantity and handle insufficient stock.
Create order_list.php by copying code from product list, adjust SQL to show invoice id, order date, total, paid, due, and payment type, with actions and a data table plan.
Add a datatable plugin to the order list by copying product list code, update table names and IDs, and enable search, pagination, and action tooltips (edit, delete, print bill).
Enhance the PHP MySQL POS web app by adding bootstrap 4 payment badges for cash, card, and check, implement descending order with DataTables, and ensure proper redirects and delete functionality.
Build the edit order post page for a PHP MySQL POS app by fetching invoice data by id, displaying subtotal, discount, total, and paid, and reusing pos.php code.
Edit a POS order for invoice id 29 by displaying and updating items, using ajax and php to fetch data from invoice details and product tables and compute totals.
Display the payment type (cash, card, check) in edit order pos and refine due and paid calculations. Add safeguards to prevent incorrect data insertion and note php database inserts.
Update order functionality in a php mysql pos app by using the update order button to refresh stock and invoice data, and remove old invoice details.
Update the invoice record and adjust product stock with php and pdo, setting order date, subtotal, discount, cgst, total, and inserting invoice details before redirecting to order list.
Implement a delete button with confirmation to remove an order and revert stock by updating tbl_invoice and tbl_invoice_detail with an inner join, restoring inventory stock.
Learn to create a bill or invoice as a PDF using the Fpdf library, by downloading and including it in the project and formatting pages, fonts, and cells for printing.
Learn how to generate a thermal-printer bill in a php mysql pos web app by rendering a 3-inch wide pdf, setting coordinates, fonts, and lines, and formatting invoice data.
Develop a print bill feature in a PHP MySQL POS app by querying invoice details, looping through results, and formatting items with FPDF (product, quantity, rate, total).
Develop a PHP print bill feature that fetches invoice data and computes subtotal, discount, cgst/sgst, grand total, and paid due. Format with left-aligned product data and center-aligned quantity and price.
View a demo of printing bills or invoices with a thermal printer in a PHP MySQL inventory POS web app. Learn to integrate thermal printing for receipts.
Requirements
You need to just a Computer or Laptop with Internet Connection and DESIRE to learn programming in PHP.
You have to knowledge of PHP MYSQL Bootstrap, HTML5 and CSS3 basic principles for project, You can find free course for bootstrap , HTML5 and CSS3 on UDEMY from scratch. It’s not mandatory but it could be helpful for the project Development, You Should have basic background in JavaScript, jQuery and Bootstrap grid layout.
Description
Would you like to learn Basic fundamentals of PHP with Inventory POS BARCODE System Real time Project and sell it to companies that wants to manage their inventory and billing?
In this course you will learn basic fundamentals of PHP with Inventory POS BARCODE System from scratch using the programming language PHP8, combining several resources that will allow you to offer useful characteristics for any company that needs to open a store or manage their sales and stock.
This is REAL TIME PROJECT course where I will teach you step by step the basics fundamentals of PHP8 with creating WEB APPLICATION with PHP under the Procedure way with PDO(PHP DATA OBJECT), when you finish it, you could sell it to your clients or it could be used as a basis to develop other complex web applications.
POS BARCODE SYSTEM characteristics:
Login Module
User Registration
Category
Products , Stock , Product BARCODE
Inventory management
Invoice Billing PDF printing(FPDF)
Sales Order with different payment methods with Scanning of BARCODE
Sales report
Best-selling products report
Stock product control
Daily report
Monthly report
Date range report
Adapted to all devices (Responsive design)
Libraries you will learn how to use:
AdminLTE Dashboard BOOTSTRAP 4 : Great open source template for responsive software Development.
jQuery DataTable: Used for dynamic tables creation.
ChartJS:Used for dynamic graphics and charts.
Date Range Picker: Used for selecting date ranges.
Select2 Plugin: For Searcing products in sales order
Sweetalerts: Awesome alerts library.
FPDF :PHP extension for PDF format printing.
BARCODE LIBRARY
And Many others...
HOW’S THE COURSE?
The course is divided in several sections. we will work for developing the Inventory POS BARCODE system.
And the following sections we will build, step by step from scratch, every single module that will be part of our Inventory POS BARCODE system from HTML, CSS stylesheet, JavaScript interaction and jQuery, along other plugins and server-side connection using PHP 8 with PDO(PHP DATA OBJECT) under the Procedure pattern using MySQL database.
HOW LONG DOES IT TAKE TO COMPLETE THE COURSE?
It is up to you. I guess that you would take less than three weeks to complete it, but it depends on your availability and workflow.
WHAT ARE THE MINIMUM REQUIREMENTS?
Download the material where you can find the resources for the first lesson in each section.
You should have a basic knowledge on PHP8, Mysql , Bootstrap , HTML5 and CSS3, course.