PHP 8 ile HTML editörü oluşturmak, kullanıcıların içeriklerini zengin bir biçimde düzenlemelerine olanak tanır. Aşağıda, basit bir HTML editörü oluşturmanın adımlarını bulabilirsiniz.
1. HTML Editörü Kütüphanesi Seçimi
Öncelikle, kullanmak için bir HTML editörü kütüphanesi seçmeniz gerekecek. Popüler seçeneklerden bazıları şunlardır:
- TinyMCE
- CKEditor
- Quill
Bu örnekte, CKEditor kullanacağız. Kütüphaneyi projenize dahil etmek için CKEditor'un resmi web sitesinden veya CDN üzerinden yükleyebilirsiniz.
2. HTML Form Oluşturma
Editörün yerleştirileceği bir HTML formu oluşturun:
<!DOCTYPE html>
<html lang="tr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>HTML Editörü</title>
<script src="https://cdn.ckeditor.com/4.16.0/standard/ckeditor.js">
</script>
</head>
<body>
<h1>Kurs İçeriği Düzenle</h1>
<form action="submit.php" method="POST">
<textarea name="content" id="editor" rows="10" cols="80">
</textarea>
<button type="submit">Kaydet</button>
</form>
<script>
CKEDITOR.replace('editor');
</script>
</body>
</html>
3. Form Verilerini İşleme
Kullanıcı formu doldurduğunda, verileri işlemek için submit.php
dosyasını oluşturun:
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
// Verileri al
$content = $_POST['content'];
// Güvenlik önlemleri (XSS koruması)
$content = htmlspecialchars($content, ENT_QUOTES, 'UTF-8');
// Veritabanına kaydetme işlemi (PDO kullanarak)
try {
$pdo = new PDO('mysql:host=localhost;dbname=test', 'user', 'pass');
$stmt = $pdo->prepare('INSERT INTO courses (description) VALUES (:description)');
$stmt->execute(['description' => $content]);
echo "İçerik başarıyla kaydedildi!";
} catch (PDOException $e) {
echo "Hata: " . $e->getMessage();
}
}
?>
4. Veritabanı Yapısı
Eğer henüz bir veritabanı yapısı oluşturmadıysanız, aşağıdaki gibi bir tablo oluşturabilirsiniz:
CREATE TABLE courses (
id INT AUTO_INCREMENT PRIMARY KEY,
description TEXT NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
5. Güvenlik Önlemleri
-
XSS Koruması: Kullanıcıdan alınan verileri
htmlspecialchars
ile sanitize ederek XSS saldırılarına karşı koruma sağlayın. - Hazırlanmış Sorgular: SQL enjeksiyonuna karşı koruma için PDO ile hazırlanmş sorgular kullanın.
6. Ek Özellikler
HTML editörünüzü daha işlevsel hale getirmek için ek özellikler ekleyebilirsiniz:
- Kullanıcı Girişi: Kullanıcıların içeriklerini kaydedebilmesi için oturum yönetimi ekleyebilirsiniz.
- İçerik Listeleme: Kaydedilen içerikleri listelemek için bir sayfa oluşturabilirsiniz.
- Dosya Yükleme: Resim veya dosya yüklemek için CKEditor'un dosya yöneticisi eklentilerini kullanabilirsiniz.
Sonuç
Bu adımları takip ederek PHP 8 ile basit bir HTML editörü oluşturabilirsiniz. İhtiyaçlarınıza ve projelerinize göre bu yapıyı daha da geliştirip özelleştirebilirsiniz.