
connect to the database in php by creating an includes config file, setting timezone to Europe/London, and establishing a pdo connection with try-catch error handling.
Install ffmpeg to convert videos to a supported format, generate thumbnails, and capture durations for videos. Download zip, unzip it, and place the ffmpeg packed folder in your site root.
Generate three thumbnail images from a video, store their paths in a thumbnails table linked to the video, and mark the selected thumbnail for use.
Format video durations into a readable hours:minutes:seconds string by updating the videos table with a two-parameter function (duration in seconds, video id).
Style the form header by applying 20px padding top and bottom, 0 left/right, set h3 to 24px font size with 32px line height, and reset margins and top padding.
Move the sanitize function into a form sanitiser class, save it as a PHP file, and call its static method to sanitize form input without creating an instance.
Hash passwords by applying a hashing algorithm to the user input, generating a 128-character hash. Store the hash in the password column, then rehash on login and compare.
Set the video player to 100 percent width and fix the left column at 425 pixels with a flex layout to keep the video responsive.
Create the likes and dislikes tables in phpmyadmin with an auto increment primary key, and columns for username, comment_id, and video_id, then implement queries to count likes per video.
Implement an undo like feature by deleting from likes when a user taps like again, ensuring only one of like or dislike applies.
Create and manage a subscribers table for a YouTube clone using PHP and MySQL, including id, user, and subscriber fields, plus functions to check subscriptions and count subscribers.
Style the comment section on a YouTube clone by applying flex layouts, margins, and borders to the header, profile picture, textarea, and post button.
Learn to display a newly posted comment on a YouTube clone using PHP and MySQL, building the comment block with author, profile link, and content, and debug insertion issues.
Implement a toggle reply function in JavaScript that shows or hides the comment form by locating the closest item container, computing the parent, and toggling a hidden class with CSS.
Create a like comment ajax request by adapting the like video flow, passing comment ID and video ID, and adding a new ajax PHP file.
Implement and display all comments for a video by creating a get_comments function, querying the database, looping through results, and building the output string for each comment.
Indent and style nested comment replies in the YouTube clone by left padding view replies section, and ensure replies attach under the parent with a pointer cursor and 14px font.
Do you want to become an expert in JavaScript, PHP and MySQL?
Do you want to build a real video upload site just like YouTube?
If so, you’re in the right place! This course will guide you step by step in creating your own YouTube clone COMPLETELY from scratch.
We’re talking the kind of website that will amaze anybody that sees it. The kind of website that will get you hired in no time!
Why let me teach you?
I work as a Software Engineer at Microsoft where I build products used by millions of people all over the world! I want to take the skills I’ve gained through years of working with some of the best developers in the world and transfer them directly to you!
I’ve taught thousands of students here on Udemy and created some of the most popular development courses on Udemy!
Okay so what’s the course about?
I will personally guide you, step by step, in creating your own video upload site just like YouTube complete with:
video upload
video thumbnail generation
server side video conversion
full video player
likes + dislikes on videos
full comment system with likes/dislikes, replies etc.
video details editing
account creation
and much more!
Whether you are a complete beginner* or an experienced programmer, this course will be massively beneficial to you.
Why should I take the course?
In the programming world, the “big 4” often consists of Google, Microsoft, Facebook and Amazon. To get a job at any of these companies, you absolutely MUST know the essentials: HTML, CSS, PHP, JQuery, JavaScript and MySQL.
If you take this course, you will have nothing to worry about because we use all of these skills extensively!
Support:
By enrolling in this course, you will have the COMPLETE support of a Microsoft Software Engineer (me). I'm always ready to answer any question you may have. Programming issues, errors, feature requests, general programming advice - it doesn't matter, I'm always happy to help! I always aim to respond to questions within a few hours and it's also worth noting that I've answered EVERY SINGLE question asked so far.
Future course discounts:
By enrolling in this course, you will get access to ALL of my current and future courses for the lowest possible discount we as instructors are capable of offering on Udemy - FOREVER.
Project portfolio:
The site you create in this course will be the highlight of your project portfolio! Any potential employer who see's this project on your resume will want to hear all about it. The reason? They know that a project like this means you're familiar with the wide range of technical skills they need their employees to know.
Fun!
Finally, this project is a lot of fun and I know you'll have a great time implementing your own unique ideas as well as the ones we implement together. What are you waiting for?