WatchWheel, “Bugün ne izlesem?” sorusuna eğlenceli ve hızlı bir çözüm sunan modern bir web uygulamasıdır.
Kullanıcılar, dinamik bir çark mekanizması sayesinde rastgele film ve dizi önerileri alır.
Proje tamamen PHP ile geliştirilmiş olup MySQL veritabanı üzerinde çalışır.
Koyu tema üzerine sarı (gold) vurgulu modern bir arayüze sahiptir.
Kullanıcıların içerik platformlarında uzun süre vakit kaybetmeden, eğlenceli ve pratik şekilde film/dizi keşfetmesini sağlamak.
WatchWheel;
- 🎡 Rastgele öneri sunan interaktif çark yapısı,
- 👤 Kayıtsız kullanıcılar için sınırlı kullanım desteği,
- ⭐ Kayıtlı kullanıcılar için favori listesi,
- 💬 Yapımlar üzerinde yorum yapabilme,
- 🛠️ Yönetici paneli ile içerik ve kullanıcı yönetimi
özelliklerini tek bir sistemde birleştirir.
- Çarkı çevirerek film/dizi önerisi alır
- Yapım detaylarını ve yorumları görüntüler
- Kayıtlıysa favori listesi oluşturabilir
- Film/dizi içeriklerini yönetir
- Kullanıcıları ve yorumları denetler
- Sistem istatistiklerini takip eder
Backend
- PHP
- MySQL
- Session & Cookie Management
Frontend
- HTML5, CSS3
- Vanilla JavaScript
- AJAX / Fetch API
- HTML5 Canvas (Çark Mekanizması)
- ⚡ Hızlı ve eğlenceli öneri sistemi
- 🎨 Modern ve kullanıcı dostu arayüz
- 🔓 Misafir kullanıcı desteği
- 🎡 Liste yerine interaktif çark deneyimi
- 🛠️ Yönetilebilir admin paneli
WatchWheel/
├── admin/ — Yönetici paneli ve yönetim scriptleri
├── css/ — Uygulama stil dosyaları
├── images/ — Film afişleri ve sistem görselleri
├── includes/ — Veritabanı bağlantısı ve ortak bileşenler
├── js/ — Çark mantığı ve AJAX dosyaları
├── api.php — Merkezi AJAX/Fetch API uç noktası
├── index.php — Karşılama sayfası
├── login.php — Kullanıcı giriş sayfası
├── logout.php — Oturum kapatma işlemi
├── profile.php — Kullanıcı profil ve favori sayfası
├── register.php — Yeni kullanıcı kayıt sayfası
└── watchwheel.php — Çark sayfası
phpMyAdmin üzerinden watchwheel_db adında bir veritabanı açın ve aşağıdaki SQL kodlarını SQL sekmesine yapıştırarak çalıştırın:
- Kullanıcılar Tablosu (kullanicilar)
CREATE TABLE kullanicilar (
id INT AUTO_INCREMENT PRIMARY KEY,
ad VARCHAR(100),
email VARCHAR(100) UNIQUE,
sifre VARCHAR(255),
kayit_tarihi TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
- Yapımlar Tablosu (yapimlar)
CREATE TABLE yapimlar (
id INT AUTO_INCREMENT PRIMARY KEY,
ad VARCHAR(255),
tur VARCHAR(100),
yil INT,
aciklama TEXT,
resim_url VARCHAR(255)
);
- Yorumlar Tablosu (yorumlar)
CREATE TABLE yorumlar (
id INT AUTO_INCREMENT PRIMARY KEY,
kullanici_id INT,
yapim_id INT,
metin TEXT,
tarih TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (kullanici_id) REFERENCES kullanicilar(id) ON DELETE CASCADE,
FOREIGN KEY (yapim_id) REFERENCES yapimlar(id) ON DELETE CASCADE
);
- Favoriler Tablosu (favoriler)
CREATE TABLE favoriler (
id INT AUTO_INCREMENT PRIMARY KEY,
kullanici_id INT,
yapim_id INT,
FOREIGN KEY (kullanici_id) REFERENCES kullanicilar(id) ON DELETE CASCADE,
FOREIGN KEY (yapim_id) REFERENCES yapimlar(id) ON DELETE CASCADE
);
includes/db.php dosyasını açarak veritabanı bilgilerinizi şu şekilde güncelleyin:
$servername = "localhost";
$username = "root"; // Yerel sunucu kullanıcı adınız
$password = ""; // Yerel sunucu şifreniz
$dbname = "watchwheel_db";
Tüm adımları tamamladıktan sonra tarayıcınızı açın ve aşağıdaki adrese giderek projeyi başlatın:
http://localhost/WatchWheel/index.php