📚 Online Course Selling Platform

Complete Installation Guide

Version 1.0 | PHP 8+ | MySQL | cPanel Compatible

Ready to deploy! This platform is designed for shared cPanel hosting. No VPS required.

Folder Structure

course-platform/
├── admin/                  # Admin Panel
│   ├── login.php           # Admin Login
│   ├── dashboard.php       # Admin Dashboard
│   ├── courses.php         # Course Management
│   ├── course-add.php      # Add Course
│   ├── course-edit.php     # Edit Course
│   ├── modules.php         # Module & Lesson Management
│   ├── lesson-add.php      # Add Lesson
│   ├── lesson-edit.php     # Edit Lesson
│   ├── payments.php        # Payment Management
│   ├── students.php        # Student Management
│   ├── testimonials.php    # Testimonials
│   ├── proofs.php          # Student Proofs
│   ├── settings.php        # Site Settings
│   ├── analytics.php       # Analytics & UTM Tracking
│   ├── logout.php          # Admin Logout
│   └── partials/           # Admin Header/Footer
├── includes/               # Core PHP Files
│   ├── config.php          # Configuration
│   ├── database.php        # Database Connection
│   ├── functions.php       # Core Functions
│   ├── auth.php            # Authentication
│   └── tracking.php        # Analytics Tracking
├── css/
│   └── style.css           # Main Stylesheet
├── js/
│   └── main.js             # Main JavaScript
├── uploads/                # File Uploads Directory
├── images/                 # Static Images
├── assets/                 # Additional Assets
├── index.php               # Landing Page
├── login.php               # Student Login
├── register.php            # Student Registration
├── forgot-password.php     # Password Reset
├── dashboard.php           # Student Dashboard
├── course-player.php       # Video Player
├── checkout.php            # Payment Checkout
├── profile.php             # Student Profile
├── mark-complete.php       # Lesson Completion
├── logout.php              # Student Logout
├── database.sql            # MySQL Database
├── .htaccess               # SEO & Security
└── install.html            # This Guide
            

Installation Steps

1 Create MySQL Database

  1. Login to your cPanel hosting
  2. Find MySQL Databases (phpMyAdmin)
  3. Create a new database (e.g., course_platform)
  4. Create a database user and password
  5. Add the user to the database with ALL PRIVILEGES

2 Import Database

  1. Open phpMyAdmin
  2. Select your database from the left sidebar
  3. Click the Import tab at the top
  4. Click Choose File
  5. Select database.sql from your downloaded files
  6. Click Go / Import
  7. Wait for "Import has been successfully finished"
The database contains all tables: admins, users, courses, modules, lessons, enrollments, payments, testimonials, student_proofs, site_settings, analytics, user_progress.

3 Upload Files to Server

  1. Connect to your hosting via cPanel File Manager or FTP (FileZilla)
  2. Navigate to public_html (or www)
  3. Upload ALL files and folders to this directory
  4. Make sure uploads/ folder has write permissions (755)
If installing in a subfolder (e.g., public_html/course/), you'll need to update SITE_URL in includes/config.php.

4 Configure Database Connection

Open includes/config.php and update these values:

define('DB_HOST', 'localhost');     // Usually 'localhost' on cPanel
define('DB_NAME', 'your_database_name');
define('DB_USER', 'your_database_user');
define('DB_PASS', 'your_database_password');
define('SITE_URL', 'https://yourdomain.com');  // Your website URL
            

5 Set Permissions

Ensure the following directories are writable:

You can set permissions in cPanel File Manager (right-click → Change Permissions) or via FTP.

6 Verify Installation

  1. Visit your domain: https://yourdomain.com
  2. You should see the premium course landing page
  3. If you see a blank page, check error.log in the root directory

Admin Login Details

Admin Panel URL:

https://yourdomain.com/admin/login.php

Default Admin Credentials:

Username: admin
Email:    admin@courselanding.com
Password: admin123
            
IMPORTANT: Change the admin password immediately after first login!

Quick Start Guide

1. Configure Site Settings

Go to Admin → Settings to set:

2. Create Your Course

Go to Admin → Courses → Add Course

3. Add Modules & Lessons

Go to Admin → Courses → Click Modules icon

4. Add Testimonials & Proofs

Go to Admin → Testimonials / Student Proofs

5. Manage Payments

Go to Admin → Payments

Features Overview

✅ Landing Page

Premium dark UI, hero section, video intro, curriculum, testimonials, FAQ, CTA

✅ User System

Registration, Login, Forgot Password, Profile Management

✅ bKash Payment

Manual payment verification with admin approval

✅ Student Dashboard

My Courses, Progress Tracking, Video Player, Payment History

✅ Admin Panel

Full CRUD: Courses, Modules, Lessons, Payments, Students, Settings

✅ Tracking & Analytics

Facebook Pixel, TikTok Pixel, Google Analytics, UTM Tracking

✅ Mobile Responsive

Mobile-first design, sticky buy button

✅ Security

SQL injection protected, CSRF, XSS, Password hashing

Troubleshooting

❌ Blank page / White screen
Check error.log in root. Ensure PHP 8+ is enabled. Check database credentials in includes/config.php.
❌ Database connection failed
Verify DB_HOST, DB_NAME, DB_USER, DB_PASS in config. Ensure database was imported successfully.
❌ 500 Internal Server Error
Check file permissions. Ensure .htaccess is compatible with your server (rename to .htaccess.bak to test).
❌ Images not uploading
Check uploads/ folder permissions (755 or 777). Check PHP upload limits in .htaccess.
❌ Admin login not working
Default password is admin123. If changed, reset via database in phpMyAdmin using password_hash('newpass', PASSWORD_DEFAULT).
❌ Payments not showing
Ensure bKash number is set in Settings. Check that students are submitting payments correctly.

🎉 Installation Complete! Your Online Course Selling Platform is ready.

Need help? Contact your developer or check the documentation.

Thank you for choosing this platform