HTML5 Shiv – Beginners Guide for Web Developers – 004
This tutorial is connected from the previous HTML5 tutorial, the “New Semantic Elements“.
So, what is HTML5 Shiv?
It is a JavaScript that adds the HTML5 elements to the earlier versions of Internet Explorer.
It is helpful because if you are developing a website and you want to work it on a IE or anything and you want to do it with HTML 5.
So, the important thing is you have to have a website that supports all browsers which HTML5 Shiv will really help you in achieving such want.
So, let’s go to GitHub HTML5 Shiv and get grab our HTML5 Shiv, some people call it Shiv, others call it Shim. You can also redirect yourself to download the HTML5 Shim by clicking here.
Also, at that website, there is an explanation regarding with HTML5 Shiv, what do these files do, installation, API, and issues and limitations.
Right now, create a New Folder named “js” where you stored your index.html file so that you won’t be having a hard time looking for your HTML5 Shiv. Refer to the image below.

Next, insert this line of code to your recent index.html file so that your index.html file will be able to launch on different browsers like IE 9, Safari 4.x, and FireFox 3.x. Refer to the sample code and insert it between the link tag and the script tag in your head tag.
[html5]
<!--[if lt IE 9]>
<a href="http://js/html5shiv-master/dist/html5shiv.js">http://js/html5shiv-master/dist/html5shiv.js</a>
<![endif]-->
[/html5]Now, your elements should be recognized by older browsers and we can get on with coding our HTML5 website and not to worry about the browser not recognizing these elements.

As we tested our index.html file on an IE browser, its good. You can also try it on lower versions to test if the HTML5 Shim really does its job.
On our next tutorial, we will be discussing about HTML5 Boilerplate. Stay tuned webbies!
For questions or any other concerns or thesis/capstone creation with documentation, you can contact me through the following:
E-Mail: [email protected]
Facebook: facebook.com/kirk.lavapiez
Contact No.: +639771069640
Ian Hero L. Lavapiez
BSIT Graduate, soon to be MIT.
System Analyst and Developer
Frequently Asked Questions
How does this PHP project work?
Built with vanilla PHP (no framework) and MySQL backend. Standard structure: form HTML, PHP script handlers, MySQL via PDO or mysqli, sessions for auth, Bootstrap for responsive layout. Ready to extend for BSIT capstone scope.
What PHP and MySQL versions does this project require?
Most projects in this batch run on PHP 7.4 to PHP 8.2 with MySQL 5.7+ or MariaDB 10+. A few older projects need PHP 5.6 (deprecated, use XAMPP 7.x). To run: install XAMPP / WAMP / Laragon, extract project to htdocs, import the included .sql file via phpMyAdmin, edit the connection file (usually config.php or db_connect.php) with your DB credentials, browse to the project URL in your browser.
How do I set up the database for this PHP project?
Open phpMyAdmin (http://localhost/phpmyadmin/ on XAMPP), create a new empty database with the name specified in the project’s config.php. Click the Import tab, choose the included .sql file, click Go. Then edit config.php (or includes/connection.php) with: ‘localhost’, your MySQL username (usually ‘root’), your MySQL password (usually blank for XAMPP), and the database name.
Can I use this PHP project for a BSIT capstone or thesis?
Yes, but extend it. A bare CRUD app is too narrow for full capstone scope. Add: user roles via session checks, reports/dashboards (Chart.js + AJAX), PDF exports (TCPDF library), email notifications (PHPMailer), real domain extension (analytics, audit log, multi-branch support). Pair with Chapter 1-5 documentation matching your panel’s rubric.
Why am I getting ‘connection error’ or ‘undefined function mysqli_connect’?
Three common PHP issues: (1) Connection error: Apache + MySQL services not running in XAMPP control panel, OR database name in config.php does not match what you created in phpMyAdmin. (2) ‘undefined function mysqli_connect’: MySQL extension not enabled, in php.ini uncomment extension=mysqli (then restart Apache). (3) ‘No such file or directory’: MySQL socket path wrong, use 127.0.0.1 instead of localhost in the connection string.
Where can I find more PHP projects with source code?
Browse the PHP Projects hub for the full library (300+ vanilla PHP systems). For modern PHP MVC alternatives see Laravel Projects (74 systems) or CodeIgniter Projects (32 systems). For BSIT-focused capstone idea lists see 150 Best Capstone Project Ideas.
