
Front end of a Laravel 9 online hotel booking platform, with room listings, cart and checkout, PayPal and Stripe payments, admin panel for managing rooms, bookings, and site settings.
Install the gem software, launch the installer, and use the gem control panel to start Apache and MySQL, then manage databases via localhost and the my admin interface.
Shift between php versions in xampp by downloading portable versions, swapping the apache and php folders, renaming them, restarting the server, and verifying the active version with a test file.
Install laragon to set up a local server, run Apache and MySQL, and access phpmyadmin on local host to verify root login with no password.
Learn how to shift between PSP versions by installing different PSP versions, selecting the current version, and restarting services to verify the active PSP version.
Install gem on Mac, enable Apache and MySQL, verify phpMyAdmin, open a VS Code project folder, create index.psp, and test the local server at localhost.
download and install the free version of MAMP on macOS, then configure ports to run Apache and phpMyAdmin for local database development.
Learn to shift between PSP/php versions in MAMP by activating 8.1 and 8.2 folders, renaming others with an underscore, and restarting the service to verify the current version.
Explore popular PHP code editors and learn why Visual Studio Code stands out for its lightweight design and extensive extensions, with guidance on installation and essential extensions.
Download and install Visual Studio Code from the official site by choosing the Windows installer. Launch the editor, get started, and work with your project folder.
Open the base code in Visual Studio Code using the open folder option, then add a second folder to work with multiple folders.
learn how to enable autosave in VS Code, including saving with ctrl+s and configuring autosave after delay to automatically save edits as you type.
Explore how to use and install extensions in Visual Studio Code, with Python, Jupyter, HTML, CSS extensions, and learn how to manage installed extensions and color schemes.
Locate the code editor's settings JSON in Windows roaming under the user folder, then save changes to that file. Back up by zipping settings.json to restore after reinstall.
Reset VS Code by deleting settings.json and the VS Code extensions folder, then reopen to confirm a fresh setup with no extensions and autosave set to off.
Learn to create and use code snippets in the editor, defining prefix, body, and description to insert reusable HTML and other code blocks across files.
Install the Bootstrap 5 extension and explore five quick snippets to add accordions, tables, cards, and forms, enabling fast, Bootstrap 5 styled components in a Laravel 9 hotel booking platform.
Install the auto rename tag extension, then rename opening tags like h2 to h3 and have the closing tag update automatically, reducing coding time.
The lecture shows that the black bear color extension is deprecated and managed from settings, not as an extension. Enable bracket pair colorization to see yellow and other colors.
Install the material icon theme extension to upgrade your base code editor icons, making files and folders instantly recognizable with open and closed folder icons for easier sidebar navigation.
Install the VS Code great icons extension, explore the material icons option, and apply icons to the explorer items to see blue folder icons and JavaScript icons in action.
Install the live server extension in the base code editor. Right-click an HTML file and select open with live server to run a local server and preview the page.
Install and use the live server preview extension to enable automatic, real-time updates of your sample login page as you edit fields like email and password.
Install the HTML CSS support extension to load standard CSS classes into your project, enabling you to reference colors like red, green, and blue directly and streamline styling.
Install and use the Laravel snippets extension to streamline coding, explore the Laravel folder and web root, and learn snippet-driven tasks like boot, post, and resource redirects.
Install and use the extension laravel blade spacer to automate spacing in blade templates, demonstrating its integration with resources/views and the blade syntax.
Install and use the Laravel artisan extension to perform common artisan tasks from the user interface, including clearing the cache and generating controllers, resource controllers, and api controllers.
learn how to install a laravel extension that enables go-to-controller navigation, create a student controller with an index method using artisan, and jump to controller functions quickly by ctrl-clicking.
Explore Laravel's default color schemes, where the background is black, learn how to switch colors and preview changes, and install additional schemes via extensions, including Dracula and Noctis.
Open a new terminal to run Laravel commands and start the server; use the terminal or Git Bash to create a model in the models folder and explore commands.
Enable settings sync to automatically save changes online, including settings, extensions, and preferences, after signing in with Microsoft or GitHub; your configurations sync to new devices when you sign in.
This lecture explains installing Laravel 8 or 9 on a local server, using PHP 7.4 for Laravel 8 and PHP 8 for Laravel 9, with Composer and setup verification.
Understand the model-view-controller structure, where the controller processes input, retrieves data from the model, and renders it via the view, with Laravel enabling easy maintenance and issue-friendly URLs.
Explore how Laravel, an open-source PHP framework, uses Eloquent ORM to manage databases with migrations, seeders, and fakers, while emphasizing MVC structure and security.
Install composer on Windows to use a dependency manager for programming languages, import packages into projects, and manage updates and package installations with the command line.
Install composer on macOS using homebrew, verify the installation, and configure composer for a Laravel 9 online hotel booking project.
Install laravel on your computer using composer, select a version, create the project folder, and then run the development server from the public folder to view the app.
Explore the Laravel folder and file structure, including app, controllers, middleware, models, and config, and see how database, migrations, and seeders support the framework’s MVC architecture.
Define basic and parameterized routes in a fresh laravel installation. Return views and pass data to those views using double curly braces to render variables.
Explore route redirection in Laravel by sending the home page to the about page and using named routes to generate links with route names.
Learn to create and use controllers in a fresh Laravel setup, define routes, return views, and pass parameters to render dynamic pages like home, about, and profile.
Explore Blade syntax and directives, pass data from a student controller to views, and use loops, conditionals, and escaping in a fresh Laravel 9 setup.
Learn how Blade directives power templates, create a common layout, and render dynamic content with sections, extends, and yield for home and about pages in a Laravel app.
Use Laravel middleware as a modular layer between user and request to authenticate, register custom checks, and redirect to home when price exceeds 100.
Implement a price middleware as root middleware and invoke it on specific routes. Test with the about and contact routes, noting redirects when price thresholds are exceeded.
Group routes using prefixes and middleware in Laravel, create location grouped routes like city and country, apply price middleware, and name routes for easy access with dot notation.
Master database migration with Laravel: create and modify tables, add and remove columns, and manage migrations with up and down methods, rollback, and refresh.
This lecture explains how Laravel models map to database tables with eloquent, enabling insert and update operations, and covers model creation, migrations, naming conventions, and optional timestamps.
Learn how to insert data into a Laravel 9 database using raw SQL, creating a students table with name, email, and phone, and inserting rows via a controller and route.
Apply raw SQL in Laravel to retrieve all rows from the students table, pass data to a view, and render both all records and a single row by ID.
Learn to update records in a Laravel app using the update function on the students table, setting a new name for the first record.
Learn to delete data in a Laravel database using raw SQL by creating a delete function and route, writing a delete query with a where clause, and verifying removal.
Master raw sql joins in Laravel by joining the students table with the fees table, using migrations, a controller, and a view to display joined data.
Learn to insert data into a Laravel database using the query builder, including creating migrations, a controller, and using DB::table('students')->insert(...) to add records.
learn to read data from a database with Laravel's query builder, display students, and fetch a single student by id using get, where, and compact to pass data to views.
Update database records using the code builder in a Laravel 9 context by modifying a record with an ID condition, demonstrating updating a name field and verifying the change.
Learn to delete data with Laravel 9's query builder by specifying table and id with a where clause, via a delete function in the student controller, and verify record removal.
Use Laravel query builder to join a student and fees table, then select and get to show each student's name with fee amount and month.
Insert data into a database using Laravel's Eloquent ORM in a fresh Laravel setup, creating migrations, a student model, and a controller route to persist records with timestamps.
Learn to retrieve data with eloquent in a laravel 9 app, display all student records (name and email) via compact, and fetch a single record with the fast method.
Learn to update database records with eloquent by building an update function in a controller, selecting a record by id, and changing fields like name and email.
Delete data from a database using the Eloquent ORM in Laravel 9 by creating a delete function in the student controller, wiring a route, and deleting the record by id.
Explore the Laravel Eloquent one-to-one reverse relationship by defining a belongsTo relation in the phone model, using student_id as the foreign key to connect to the student.
Learn to implement one-to-many relationships between students and phones using Eloquent ORM, switch from hasOne to hasMany, and render multiple phone numbers per student in Laravel.
Build a Laravel crud app by setting up migrations and student model. Implement a form with validation and error messages, insert data with eloquent, and display a session success alert.
Fetch all students in the Laravel student controller index and display them in a dynamic table using compact, with name, email, and edit or delete actions including confirmation.
Demonstrate updating a single record in a Laravel CRUD app by building an edit view, passing the record ID, and saving changes with validation and a success redirect.
Demonstrates a Laravel 9 CRUD delete operation for an online hotel booking platform: confirm deletion via popup, pass the item id, delete the record, and redirect back with success message.
Master uploading and validating images in a Laravel CRUD flow, including multipart forms, image type and size validation, saving to public/uploads, and displaying the photo in the view.
Edit existing photos in a Laravel 9 hotel booking platform by implementing optional photo uploads, image validation, and safe replacement of the old photo during updates.
Delete the related photo file when removing a database row, unlinking it from the atlas folder. Implement the check, remove the file, and update the UI to reflect the deletion.
Learn how soft delete in Laravel marks records with a deleted_at timestamp, how to enable it via migrations and the SoftDeletes trait, and how to restore them.
Explore how to implement force delete in Laravel, understand soft delete, and permanently remove student records from the database via the controller and routes.
Learn to create reusable helper functions in Laravel by adding a helpers.php file, autoloading it with composer, and calling getResult from controllers and routes.
Learn how to send email in Laravel by creating a mail class, composing subject and body, configuring SMTP with mail drop, and sending via a controller and route.
Learn how to create a seeder in Laravel to insert data into a posts table using migrations, a model, and artisan db:seed, without using the admin.
Seed thousands of posts with Faker using a post factory linked to a model, creating 50 posts with titles, descriptions, and photos uploaded to public/upload.
Edit .env file contents using a user interface in a Laravel app to update mail settings—host, port, username, password, and encryption—through a form handled by a controller and routes.
Learn a basic single-user authentication in Laravel, including registration with email verification, login, forget password, and a dashboard, using migrations and simple views for home, login, and registration.
Develop a registration submit flow, create and save a user with hashed password, generate an activation token, send a verification email, and complete registration via the verify link.
verify registration by validating token and email from the url against the users table, then activate the user and clear the token for a one-time link.
Demonstrates a single-user authentication flow in Laravel 9, including a login form, web guard validation and logout handling, an active status check, and dashboard access.
Explore building a forgot password flow in a Laravel 9 single-user authentication system, including post requests, email submission, token generation, verification, and sending a reset link.
Learn to implement a Laravel reset password flow from route creation and token validation to form handling, email token passing, and updating the user password securely.
Explore implementing multi authentication with a users table, using a role field to distinguish admin and user access. Demonstrate admin-only settings and role-based navigation in a Laravel hotel booking platform.
Implement a two-dashboard system for users and admins with single-table authentication, using role-based middleware, guards, and redirects to secure admin and user areas.
Explore implementing multi-auth in Laravel 9 by using separate guards and tables for users and admins, including migrations, admin model, and distinct admin and user login routes.
Develop the admin module for a Laravel 9 hotel booking platform by creating an admin controller, admin login flow, admin dashboard, and an admin guard with dedicated views and settings.
Implement multi authentication with different guards and tables to securely manage user and admin access, control dashboards, and enforce redirects and access restrictions.
Build a Bootstrap 5 admin panel HTML template. Utilize date picker and time picker, color picker, text editor, photo uploader, data tables, login with forget password and password reset link.
Install Laravel 9 for the admin panel, verify bsp version at least 8, install with composer create-project, then create the admin panel database and update .env.
Build an admin layout for Laravel 9 hotel booking by creating an admin folder, dashboard controller, routes, and asset loading in the master template with heading and main content sections.
Create a dedicated admins table via migration with fields for name, photo, email, password, token, and timestamps; build an admin model extending the authenticable class and configure a multi-auth guard.
Create and configure an admin middleware in Laravel 9 to protect the admin routes, reusing the authenticate middleware, register it in the kernel, and connect to the admin login route.
Create a default admin by manually inserting admin data in phpMyAdmin, secure the password with Laravel's hashing, and prepare the login flow to manage admin details.
Set up the application's email by creating a mail class and view, configuring mailtrap SMTP in the mailer, and sending the email from the admin login controller.
Learn to implement an admin login system in Laravel: build login form, validate inputs, configure admin guard and provider, implement login submission and logout, and protect routes with middleware.
learn to implement a Laravel 9 admin forget password flow: validate email, generate a reset token, store it, send a reset link via email, and manage success and errors.
Describe implementing admin password reset in Laravel 9: validate token and email, present a reset form, hash and save the new password, clear the token, and redirect to admin login.
Edit the admin profile to update name, email, and optional password, and handle profile photo uploads with validation, storage, and toast notifications in the Laravel 9 hotel booking platform.
Explore the hotel booking front end built with Bootstrap 5, featuring room types, room details, cart and checkout flows, and PayPal or Stripe payment integration.
In this course, I have taught the students the Laravel framework from scratch. After showing all the basics of Laravel, authentication system, template mastering etc., I have developed a complete Online Hotel Booking Application with Laravel 9.
The persons who are very beginner in Laravel and only have few php and oop idea, they will be benefitted the most from this course. But the advanced persons will also get help from this course, because I have coded following the standard and showed some advanced features.
Admin Panel Features:
Admin can create, edit and delete Customers.
Admin can change logo
Admin can change favicon
Admin can change top bar information.
Admin can control the home page information.
Admin can create, edit and delete hotel rooms.
Admin can create, edit and delete FAQs.
Admin can create, edit and delete photos for the photo gallery.
Admin can create, edit and delete photos for the video gallery.
Admin can create, edit and delete the social items.
Admin can send email to subscribers.
Admin can change his own photo, information and password.
Customer Features
1. Customer can change his own photo, information and password.
2. Customer can book hotel rooms.
3. Customer can make payment using PayPal and Stripe.
4. Customer can make registration in this website for free.
5. Customer can see orders.
6. Customer can print the invoice.