What a school web project actually needs
A page shows things; an application remembers them. Where the server side fits after school HTML/CSS/JavaScript, the project you will build, and PHP running on your own computer by the end of the lesson.
Page or application?
You can already make a web page. You have probably made one at school: HTML for the content, CSS to style it, some JavaScript so a button does something. Reload the page, and everything the JavaScript did is gone. That is fine for a page. It is fatal for a project.
A web application remembers. Add a book, close the browser, come back tomorrow: the book is still there. Two people can use it from two computers and see the same data. Someone has to log in before they can delete things. None of that can happen in the browser alone, because the browser only ever holds one copy of one page for one person, for as long as it is open.
The missing piece is the server side: code that runs on the computer that serves the pages, next to a database that keeps the data. That is what this course adds.
What school covers, and what it does not
School web courses stop at the browser. CBSE's Web Application skill subject (code 803), for example, lists its Class XII units as movie editing tools, embedding multimedia in web pages, web scripting with JavaScript, and work-integrated learning — HTML, CSS and JavaScript, with no server-side language and no database (CBSE's Class XII curriculum for subject 803, checked 24 September 2026, is on the CBSE Academic site; the current year's version is listed under Skill Education there). Other boards' IT courses are similar. If you have done a database unit with SQL, that helps in lessons 6 and 7; if not, this course teaches the SQL you need.
So the plan is: a quick recap of the browser side you know (lesson 2), then everything school did not have time for.
How one request travels
Every screen in your project will follow this path:
- The browser asks the server for a page — say
books.php— or submits a form to it. - The web server sees the
.phpending and hands the file to PHP, which runs it. - Your PHP code talks to MySQL: "give me all the books", "add this member".
- MySQL sends rows back. PHP turns them into HTML.
- The server sends that HTML to the browser, which draws it exactly like any page.
The browser never sees a line of PHP — only the HTML it produced. That is why PHP can safely hold the database password and decide who is logged in: it runs on your side, not the user's.
The project: a library record system
You will build one complete application and finish it. A school library is a good subject because everyone understands it, it has real rules (you cannot issue a book that is out), and it exercises everything an examiner wants to see:
- Books — add, edit, delete, search, and see how many copies are available.
- Members — students who borrow, with a class and phone number.
- Issues and returns — issue a book to a member with a due date, return it, list what is out and what is overdue.
- Dashboard — counts of books, members, books out and overdue.
- Login — a librarian account; nobody else can change anything.
- A report and a viva — lesson 12.
By lesson 9 it works end to end. Lessons 10 and 11 make it safe and presentable. You can swap the subject — hostel rooms, sports equipment, lab stock — once you understand the shape; the code hardly changes.
Install PHP and MySQL on your computer
You need a web server, PHP and MySQL, and the easiest way to get all three is XAMPP, a free package for Windows, Mac and Linux from apachefriends.org. Install it with the default options (ask before installing on a shared or school computer).
- Open the XAMPP Control Panel and press Start next to Apache and MySQL. Both should turn green. If Apache will not start, something else is using port 80 — usually Skype or another web server; close it and try again.
- Open a browser and go to
http://localhost/. The XAMPP welcome page means the server is running. - Find the
htdocsfolder inside the XAMPP folder (C:\xampp\htdocson Windows,/Applications/XAMPP/htdocson a Mac). Anything in here is served athttp://localhost/. - Inside
htdocs, make a folder calledlibrary. Every file in this course goes there.
Now your first PHP file. Create htdocs/library/hello.php:
<?php
$today = date('l, j F Y');
$books = 3;
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Hello</title>
</head>
<body>
<h1>Library</h1>
<p>Today is <?= $today ?>. There are <?= $books ?> books.</p>
</body>
</html>
Open http://localhost/library/hello.php. You should see today's date. Now press Ctrl+U to view the source: no PHP, no $today — just the HTML PHP produced. That is step 5 of the cycle, seen from the browser.
Three things to notice: <?php switches into PHP and ?> switches back to HTML; a variable starts with $; <?= ... ?> is the short way to print a value into the HTML. Use any text editor you like — Visual Studio Code is free and highlights PHP well.
The habit
Change the number of books. Save. Reload. Delete the semicolon after 3 and reload: PHP shows a parse error with a line number. Read it, fix it, reload. You will do this hundreds of times; the people who finish projects are the ones who read the error instead of staring at the code.
Try it
- Make
hello.phpprint your name and the name of your school subject in the heading. - Add a variable
$overdue = 2;and a paragraph that prints it. - Open
http://localhost/library/with no file name. What do you see, and why? (Lesson 4 gives this folder anindex.php.) - Open
http://localhost/phpmyadmin/. This is phpMyAdmin, the tool you will use to look at your database from lesson 6. Just look around for now.
That was lesson 1. The other 11 are one payment away.
Next up: The browser side you will actually use. Buy once, read every lesson online with your progress saved, and keep the whole course as a Word file.
Get the course · ₹999$29