Course Highlights
  • Program with an object oriented approach
  • Handle data submissions using PHP and insert into MySQL databases
Curriculum

6 Topics
Site demo (as seen on course home page)
Installing Xampp - Mac / Linux
Installing Xampp - Windows
Installing a text editor
Creating our index page
Adding real content to our index page

11 Topics
Styling the top navigation bar
Styling the side navigation bar
Styling the main container
Creating our JavaScript file
Showing and hiding the left nav bar
Menu icon - How to get 70000+ FREE icons
Site logo
Creating the search bar
Styling the search bar
Upload and profile buttons
Moving the nav bar code to another file

10 Topics
Creating the column element
Creating the file input
Creating the title and description inputs
Creating the privacy input
Creating the categories MySQL table
Connecting to our database with PHP
Retrieving the categories from the table
Class constructors
Creating the categories dropdown
Creating the upload button

21 Topics
Creating the processing page
Video upload data class
Calling the upload function
Temporary file path for the video
Checking the size of the uploaded video
Checking the file type of the uploaded video
Moving the video to a temporary location
Creating the final file path
Inserting the video data into the table
Installing FFmpeg
FFmpeg demo (just watch)
Converting the video to MP4 server side
Restart Xampp after changing php.ini
Trying out the video conversion + BUG FIX FOR MACS
Deleting the original video file
Creating the video thumbnails table
Getting the video duration
Formatting the video duration string
Inserting the formatted duration to the table
Generating the thumbnail images
Showing a loading spinner on upload

27 Topics
Creating the sign up page structure
Styling the page foundation
Styling the form header
Adding our form inputs
Styling the form inputs
Styling the sign in message
Creating the sign in form
Testing the form submission
Into to sanitizing form data
Form sanitizer class
Finishing the sanitizing functions
Creating the Account class
Starting our validation functions
Outputting error messages
Validating the last name
Validating the username
Creating the users table
Validating the email address
Validating the password
What to do when data is valid
Remembering last entered values
Password hashing
Inserting the user's data into the table
Setting the session variable
Remembering the entered username
Checking if the login form was submitted
Logging in

9 Topics
Creating the User class
Creating the User class functions
Adding username to upload
Taking the video ID from the url
Creating the Video class
Creating the Video class functions
Increasing the view count for the video
Outputting the video player
Setting the size of the video player

19 Topics
Video info section class
Styling the video info section
Creating the video info controls class
Creating the button provider class
Like button provider values
Creating the likes table
Video player actions JS file
Introduction to ajax calls
Passing data in the ajax request
Calling the like function
Inserting a video like
Undoing your like
Adding the "active" class to the button
Returning JSON data from like function
Updating the like button number
Setting the image of the like button
Dislike functionality
Styling the like buttons
Not signed in alert

11 Topics
User profile button
Formatting the upload date
Edit video button
Creating the subscribers table
Creating the subscribe button
Styling the secondary info
Styling the subscribe button
Subscribe function
Passing values into the subscribe function
Subscribing and unsubscribing
Updating the text of the subscribe button

25 Topics
Creating the comments table
Getting the number of video comments
Creating the comment form
Styling the comment form
Post comment function
Post comment ajax request
Inserting the comment
Creating the comment class
Showing the newly posted comment
Creating the comment controls class
Creating the comment like and dislike buttons
Outputting the comment like and dislike buttons
Creating the comment reply section
Styling the comment
Finishing the comment styling
Comment timestamp
View replies section element
Showing and hiding the comment reply form
Creating the like comment ajax request
Inserting the comment like
Like comment ajax response
Disliking comments
Showing the existing comments
Getting comment replies
Indenting the comment replies

8 Topics
Creating the video grid class
Creating the video grid item class
Testing the video grid item output
Outputting the video thumbnail image
Styling the video thumbnails
Outputting the video details
Trimming the description if needed
Styling the video details

4 Topics
Adding a title to the video grid
Creating the subscription videos provider class
Get subscriber videos
Outputting the subscriber videos

5 Topics
Search page parameters
Getting the search results
Outputting the search results
Ordering search results
Styling the search page

9 Topics
Showing a sign in button if the user isn't signed in
Outputting the navigation bar links
Styling the navigation bar items
Showing a list of subscriptions in the navigation bar
Trending videos provider
Trending videos page
Subscriptions page
Liked videos page
Logout page

15 Topics
Creating the profile page
Creating the profile data class
Checking if the user exists
Getting the cover photo
Outputting the cover photo
User info section
Styling the user info section
Showing the subscribe button on the profile
Styling the profile subscribe button
Adding Bootstrap tabs
Showing the user's videos
Styling the tabs
About tab content
Getting the user's total video view count
Outputting the user sign up date

7 Topics
Creating the settings page
Creating the user details form
Creating the password form
Adding values to the text boxes
Validating the user's details
Updating the user's details
Updating the password

9 Topics
Edit video page
Getting the video thumbnails
Outputting the video thumbnails
Styling the top section
Updating the selected thumbnail
Updating page with newly selected thumbnail
Creating the edit video form
Edit video form handler
Updating the video details

  Write a Review

Make a YouTube Clone from Scratch: JavaScript PHP and MySQL

Go to Paid Course