Hoşgeldin Misafir

Kendi Kodladığım Tur Scripti

müminbiri

müminbiri

Ne kadar sessiz olursan, o kadar çok işitebilirsin
13 Ağu 2025
1,325 Mesaj
TIM Görevleri
1

Aktiflik

Seviye

Deneyim

TIM / GÖREV:
İNDİRME


GENEL BİLGİLER

Admin Giriş Blgileri

siteadresiniz.com/admin
Kullanıcı: admin
Şifre :admin123

Config/db.php Site Adresini yazmayı unutmayınız sonunda / olmuyacak site adresinin​

Genel Mimari​


Teknoloji: Saf PHP (framework yok) + MySQL, PDO ile (SQL injection'a karşı hazır sorgular). Ön yüzde Bootstrap 5 + Bootstrap Icons, tamamen mobil uyumlu.


Klasör yapısı:



config/db.php → Veritabanı bağlantısı, SITE_URL tanımı
includes/ → header.php, footer.php, functions.php (ortak kod)
assets/css/style.css → Tüm site tasarımı
assets/uploads/ → Yüklenen görseller (tours, categories, destinations, slides, logos)
admin/ → Yönetim paneli (aşağıda detaylı)
*.php (kök dizin) → Herkese açık sayfalar

Veritabanı Tabloları​


TabloNe işe yarar
admin_usersPanele giriş yapan yöneticiler (şifreler bcrypt ile hash'li)
categoriesTur kategorileri (Yurtdışı, Kapadokya, Cruise, M.I.C.E. vb.)
toursTurlar — kategoriye bağlı, fiyat/süre/galeri/öne çıkan bilgisiyle
hero_slidesAna sayfadaki büyük görsel slider'ın slaytları
destinations"Gezilen Yerler" bölümündeki kare baloncuklar
services"Hizmetlerimiz" (Araç Kiralama, Uçak Bileti vb.)
settingsKey-value yapıda genel ayarlar (başlık, telefon, logo, favicon...)
contact_messagesİletişim formundan gelen mesajlar

Herkese Açık Sayfalar​


  • index.php — Slider, istatistik sayaçları (0'dan yukarı sayan animasyon), öne çıkan turlar, gezilen yerler (tıklayınca büyüyen), kategoriler
  • tur-kategori.php / tur.php — Kategori listesi ve tur detayı (galeri, benzer turlar, WhatsApp butonu)
  • hakkimizda.php — Fotoğraflı hero + okunaklı metin kutusu + "Neden Trema?" kartları + güven bandı
  • hizmet.php — Tüm hizmetler tek bir dinamik şablondan besleniyor (eski arac-kiralama.php gibi dosyalar artık buraya 301 yönlendiriyor)
  • iletisim.php — Form, mesajı veritabanına yazıyor

Admin Panel (/admin)​


Sayfaİşlev
login.phpbcrypt + session tabanlı güvenli giriş
index.phpDashboard — tur/kategori/mesaj sayıları
slides.phpAna sayfa slider'ını yönet
categories.phpKategori CRUD
tours.php / tour_form.phpTur CRUD (galeri dahil)
destinations.phpGezilen yerler CRUD
services.phpHizmetler CRUD (ikon, başlık, içerik)
messages.phpGelen mesajlar
settings.phpSekmeli ayarlar (Genel, Logo/Favicon, Hakkımızda, İletişim, Sosyal Medya)
admins.phpYönetici ekle/sil/düzenle
profile.phpKendi şifreni değiştir

Her CRUD sayfası aynı desende: liste tablosu + modal form (JS ile aç/kapa) + ?delete=id ile silme + POST ile ekleme/güncelleme.


Güvenlik​


  • PDO prepared statement — SQL injection'a kapalı
  • password_hash / password_verify — şifreler asla düz metin tutulmuyor
  • htmlspecialchars (kod içinde e() fonksiyonu) — tüm kullanıcı çıktısı XSS'e karşı temizleniyor
  • .htaccess ile config/, includes/ klasörlerine ve uploads/ içindeki PHP çalıştırmaya erişim kapalı
  • Admin sayfaları requireLogin() ile korunuyor; oturum yoksa login'e atılıyor

Nasıl Değişiklik Yaparsın?​


  • Metin/görsel değiştirme: Admin panelinden — kod dokunmana gerek yok
  • Yeni sayfa şablonu eklemek (yeni bir statik sayfa gibi): includes/header.php ve includes/footer.php'yi dahil eden yeni bir .php dosyası açman yeterli
  • Tasarım: Tek dosyada — assets/css/style.css. Renkler :root içindeki CSS değişkenlerinden (--primary, --accent vb.) yönetiliyor