Make a YouTube Clone from Scratch: JavaScript PHP and MySQL
4.5 (441 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
2,939 students enrolled

Make a YouTube Clone from Scratch: JavaScript PHP and MySQL

Learn JavaScript, PHP and MySQL by making the ultimate YouTube clone website completely from scratch!
4.5 (441 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
2,939 students enrolled
Created by Reece Kenney
Last updated 5/2020
English
English [Auto]
Current price: $34.99 Original price: $49.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 18.5 hours on-demand video
  • 1 article
  • 151 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Program with an object oriented approach
  • Handle data submissions using PHP and insert into MySQL databases
Course content
Expand all 194 lectures 18:34:02
+ Navigation bars
11 lectures 01:05:28
Styling the top navigation bar
08:22
Styling the side navigation bar
02:11
Styling the main container
03:09
Creating our JavaScript file
06:52
Showing and hiding the left nav bar
07:18
Menu icon - How to get 70,000+ FREE icons
07:26
Site logo
06:12
Creating the search bar
05:23
Styling the search bar
10:34
Upload and profile buttons
04:35
Moving the nav bar code to another file
03:26
+ Video upload form
10 lectures 01:02:15
Creating the column element
04:27
Creating the file input
08:49
Creating the title and description inputs
04:36
Creating the privacy input
04:33
Creating the categories MySQL table
08:02
Connecting to our database with PHP
10:42
Retrieving the categories from the table
06:49
Class constructors
06:26
Creating the categories dropdown
05:41
Creating the upload button
02:10
+ Uploading videos
21 lectures 02:21:29
Creating the processing page
04:40
Video upload data class
09:50
Calling the upload function
05:20
Temporary file path for the video
09:43
Checking the size of the uploaded video
06:29
Checking the file type of the uploaded video
04:19
Moving the video to a temporary location
06:11
Creating the final file path
04:41
Inserting the video data into the table
13:18
Installing FFmpeg
03:38
FFmpeg demo (just watch)
04:25
Converting the video to MP4 server side
11:48
Restart Xampp after changing php.ini
00:04
Trying out the video conversion + BUG FIX FOR MACS
07:33
Deleting the original video file
04:46
Creating the video thumbnails table
02:15
Getting the video duration
09:44
Formatting the video duration string
05:51
Inserting the formatted duration to the table
06:09
Generating the thumbnail images
12:58
Showing a loading spinner on upload
07:47
+ User sign up
27 lectures 02:30:57
Creating the sign up page structure
05:20
Styling the page foundation
07:39
Styling the form header
03:21
Adding our form inputs
06:22
Styling the form inputs
07:02
Styling the sign in message
01:05
Creating the sign in form
04:20
Testing the form submission
05:06
Into to sanitizing form data
08:50
Form sanitizer class
04:29
Finishing the sanitizing functions
05:34
Creating the Account class
06:30
Starting our validation functions
07:47
Outputting error messages
07:19
Validating the last name
01:56
Validating the username
05:58
Creating the users table
03:28
Validating the email address
06:38
Validating the password
07:52
What to do when data is valid
07:20
Remembering last entered values
04:50
Password hashing
04:12
Inserting the user's data into the table
07:45
Setting the session variable
05:27
Remembering the entered username
02:57
Checking if the login form was submitted
03:52
Logging in
07:58
+ Video player
9 lectures 45:18
Creating the User class
05:25
Creating the User class functions
07:23
Adding username to upload
02:22
Taking the video ID from the url
04:32
Creating the Video class
04:33
Creating the Video class functions
02:51
Increasing the view count for the video
06:16
Outputting the video player
07:46
Setting the size of the video player
04:10
+ Liking and disliking videos
19 lectures 01:51:09
Video info section class
06:59
Styling the video info section
04:42
Creating the video info controls class
06:14
Creating the button provider class
07:24
Like button provider values
04:58
Creating the likes table
05:28
Video player actions JS file
03:54
Introduction to ajax calls
05:43
Passing data in the ajax request
04:07
Calling the like function
05:47
Inserting a video like
06:50
Undoing your like
04:04
Adding the "active" class to the button
05:28
Returning JSON data from like function
04:38
Updating the like button number
07:17
Setting the image of the like button
08:15
Dislike functionality
08:17
Styling the like buttons
04:11
Not signed in alert
06:53
+ Video details section
11 lectures 01:15:12
User profile button
08:10
Formatting the upload date
05:44
Edit video button
06:50
Creating the subscribers table
06:12
Creating the subscribe button
09:54
Styling the secondary info
06:14
Styling the subscribe button
09:37
Subscribe function
06:56
Passing values into the subscribe function
03:59
Subscribing and unsubscribing
06:34
Updating the text of the subscribe button
05:02
+ Comment section
25 lectures 02:24:42
Creating the comments table
05:15
Getting the number of video comments
07:22
Creating the comment form
03:39
Styling the comment form
06:20
Post comment function
05:08
Post comment ajax request
04:53
Inserting the comment
04:26
Creating the comment class
07:20
Showing the newly posted comment
11:28
Creating the comment controls class
06:22
Creating the comment like and dislike buttons
06:05
Outputting the comment like and dislike buttons
05:04
Creating the comment reply section
08:08
Styling the comment
06:35
Finishing the comment styling
06:19
Comment timestamp
04:11
View replies section element
08:52
Showing and hiding the comment reply form
03:10
Creating the like comment ajax request
04:23
Inserting the comment like
05:22
Like comment ajax response
03:19
Disliking comments
02:00
Showing the existing comments
05:58
Getting comment replies
07:44
Indenting the comment replies
05:19
+ Suggested videos
8 lectures 40:10
Creating the video grid class
05:39
Creating the video grid item class
07:22
Testing the video grid item output
03:57
Outputting the video thumbnail image
04:02
Styling the video thumbnails
06:09
Outputting the video details
04:29
Trimming the description if needed
02:54
Styling the video details
05:38
Requirements
  • A basic programming knowledge is great, but not needed
  • Basic object oriented programming knowledge is a bonus
  • Any computer (Windows, Mac or Linux is fine)
Description

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? 

Who this course is for:
  • People who are interested in front end programming
  • Anyone who wants to make a YouTube clone!