![]() |
|
||||||
| Web Programlama Bir web programlama dili ve veritabanı ile dinamik içerikli web siteleri yapmayı amaçlar. |
| ||
|
|
LinkBack | Seçenekler | Stil |
|
|
#1 |
|
Çevrimiçi
|
PHP ile Admin Paneli — Kullanıcı Profil & Rozet Yönetimi (EXP, Özel Rozet, Profil Düzenleme)
Merhaba, PHP tabanlı sitelere üye yönetim paneli için; kullanıcılara özel rozetler vermek, puan (EXP) atamak ve profil bilgilerini admin tarafından düzenleyebilmek adına bunların hepsini tek bir sayfada toplayan edit_user_profile.php dosyasını sizinle paylaşıyorum. ━━━━━━━━━━ SAYFA NE YAPIYOR? ━━━━━━━━━━ Sol panelden herhangi bir kullanıcı seçince sağ tarafta o kullanıcıya ait tüm işlemler açılıyor:
━━━━━━━━━━ ROZET ÖRNEKLERİ ━━━━━━━━━━ Sisteme tanımlayabileceğiniz örnek rozetler: ![]() ━━━━━━━━━━ DOSYA YAPISI ━━━━━━━━━━ Kod:
sitem.com/
├── config/
│ └── db.php ← PDO bağlantısı (zip içinde hazır)
└── admin/
└── edit_user_profile.php ← Ana dosya
━━━━━━━━━━ VERİTABANI TABLOLARI ━━━━━━━━━━ Tablolar dosya ilk çalıştırıldığında otomatik oluşturuluyor. Ama isterseniz manuel de oluşturabilirsiniz: Kod:
-- Rozet tanımları
CREATE TABLE IF NOT EXISTS badges (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
description TEXT,
icon VARCHAR(60) DEFAULT 'fa-star',
color VARCHAR(20) DEFAULT '#ff3366',
created_at DATETIME DEFAULT NOW()
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
-- Kullanıcı-rozet ilişkisi
CREATE TABLE IF NOT EXISTS user_badges (
id INT AUTO_INCREMENT PRIMARY KEY,
user_id INT NOT NULL,
badge_id INT NOT NULL,
reason TEXT,
created_at DATETIME DEFAULT NOW(),
UNIQUE KEY uq_user_badge (user_id, badge_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
-- users tablosuna ek kolonlar (zaten varsa ALTER IGNORE ile geçer)
ALTER TABLE users ADD COLUMN IF NOT EXISTS points INT DEFAULT 0;
ALTER TABLE users ADD COLUMN IF NOT EXISTS bio TEXT NULL;
ALTER TABLE users ADD COLUMN IF NOT EXISTS city VARCHAR(100) NULL;
ALTER TABLE users ADD COLUMN IF NOT EXISTS gender VARCHAR(20) NULL;
ALTER TABLE users ADD COLUMN IF NOT EXISTS website VARCHAR(255) NULL;
━━━━━━━━━━ KURULUM ━━━━━━━━━━ 1. Dosyaları yükle Zip içindeki edit_user_profile.php dosyasını admin/ klasörüne, db.php dosyasını config/ klasörüne koy. 2. db.php'yi doldur config/db.php dosyasını aç, host / dbname / kullanıcı adı / şifre bilgilerini kendi sunucunuza göre düzenle. 3. Sayfayı aç admin/edit_user_profile.php adresine git. Tablolar yoksa otomatik oluşturulur, herhangi bir kurulum adımına gerek yok. 4. İlk rozeti oluştur Sol panelde "Yeni Rozet Oluştur" bölümünü aç → Ad, ikon ve renk gir → Kaydet. Artık kullanıcılara verebilirsin. ━━━━━━━━━━ ÖNEMLİ NOTLAR ━━━━━━━━━━
━━━━━━━━━━ GEREKSİNİMLER ━━━━━━━━━━
━━━━━━━━━━ EKLER ━━━━━━━━━━
Test ortamı: PHP 8.2 / MariaDB 10.6. Font Awesome ikonları için fontawesome.com/icons adresinden sınırsız ücretsiz ikon seçebilirsiniz, sadece class adını (fa-star, fa-crown vb.) kopyalamanız yeterli. ![]() Fallen code. Broken systems. No mercy. |
|
|
#2 |
|
Çevrimdışı
![]() Üyelerin profil bilgilerini yalnızca kayıtlı üyeler görüntüleyebilir. Lütfen kaydol bağlantısından üye olunuz.
|
Reisim Çok İyi Ellerine Sağlık
![]() İmzalardaki bağlantıları veya görselleri görüntülemek için gönderi sayınızın 10 veya daha fazla olması gerekir. Şu anda 0 mesajınız var. İmzalardaki bağlantıları veya görselleri görüntülemek için gönderi sayınızın 10 veya daha fazla olması gerekir. Şu anda 0 mesajınız var. |
| Yer İmleri |
| Konuyu 1 kişi okuyor: (0 üye ve 1 misafir) | |
|
|
| Forum | Bilgilendirme | Künye |
|
Powered by vBulletin® Version 3.8.11 Copyright ©2000 - 2026, vBulletin Solutions Inc. Forum Sahibi: Dea Dia ve Gece |
Sitemiz; yer sağlayıcı bir forum sitesidir. Forumel.Com adresimizde yapılan paylaşımlar, moderasyon ekibimizin onayına dahil olmadan direkt olarak yayınlanmaktadır. 5237 sayılı TCK (Türk Ceza Kanunu) ve 5651 Sayılı Kanun'un ilgili maddelerini ihlal eden kişilerin IP adresleri de dahil olmak üzere sair kişi veya adli mercilere müzekkere (Resmi Üst Yazı), tarafımıza tanzim edildiği takdirde paylaşılacaktır. Hukuka aykırı bir paylaşımın olduğunu düşündüğünüz mesaj ya da konuyu; İLETİŞİM linkine bildirim yoluyla iletebilirsiniz. 48 saat içerisinde mevcut şikâyetiniz üzerinden tarafınıza ulaşılacak, gerekli işlemler tesis edilecektir. |
|