Sorun çözülmüştür. @QuarkChain; arkadaşa yardımları için teşekkür ederim.

Merhabalar,

Bir duyuru sistemi yazıyorum.
Bu sistemde bulunan "Duyuru Ekle" bölümünde CKeditor kullanıyorum fakat şu şekilde saçma bir sorun ile karşı karşıyayım.
Editöre yazdığım içerik sadece belli bir kısmını yazıp, veritabanına kaydediyor. Diğer kısımlar nereye gidiyor, nereye uçuyor anlamadım.
"tail -f" ile error.log dosyasını takip ettiğimde anlık olarak bir hata düştüğünüde göremiyorum.

Soruna ait 20 saniyelik bir video var izlerseniz daha detaylı olarak anlayacaksınız;

https://disk.yandex.com.tr/i/LrgmBobxrp_9uA

Bu içeriği şu kod ile gönderiyorum;

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>ENTES | Duyuru Yönetimi</title>
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
  <script type="text/javascript" src="https://cloud.entes.com.tr/test_turan/duyuru/assets/ckeditor/ckeditor.js"></script>
  <script type="text/javascript" src="https://cloud.entes.com.tr/test_turan/duyuru/assets/ckfinder/ckfinder.js"></script>

</head>
<body>

<?php
  require_once('config.php');
  include('../bolumler/menu.php');
?>

<div class="container">

  <form id="post-form">

    <label for="title">Başlık:</label><br>
    <input class="form-control" type="text" id="title" name="title"><br>


    <label for="body">İçerik:</label><br>
    <textarea id="body" name="body"></textarea>

    </br>

    <label>Departman:</label>
  <?php
    $sql = "SELECT c.id, c.name
            FROM categories c
            INNER JOIN user_category_access uca ON c.id = uca.category_id
            WHERE uca.user_id = ?";

    $stmt = $conn->prepare($sql);
    $stmt->bind_param('i', $user_id);
    $stmt->execute();

    $result = $stmt->get_result();

    echo '<select class="form-select" id="category_id" name="category_id">';
    while ($row = $result->fetch_assoc()) {
      echo '<option value="' . $row['id'] . '">' . $row['name'] . '</option>';
    }
    echo '</select>';
  ?>

    <input class="btn btn-success" type="submit" name="submit" value="Ekle">

  </form>
<!-- Düzenleme formunu gizli -->
<form id="edit-announcement-form" style="display:none;">
  <!-- Düzenlenecek duyurunun ID'sini tutan bir gizli alan ekleyin -->
  <input type="hidden" id="edit-announcement-id">
  <!-- Düzenlenecek duyurunun başlığını gösteren bir alan ekleyin -->
  <label for="edit-title">Başlık:</label>
  <input type="text" id="edit-title">
  <!-- Düzenlenecek duyurunun içeriğini gösteren bir alan ekleyin -->
  <label for="edit-content">İçerik:</label>
  <textarea id="edit-content"></textarea>
  <!-- Düzenleme işlemini tamamlamak için bir düğme ekleyin -->
  <button type="submit">Düzenle</button>
</form>

</div>

<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
    // Form submit olayına bir dinleyici ekleyin
    document.getElementById('post-form').addEventListener('submit', addAnnouncement);



    function addAnnouncement(e) {
      CKEDITOR.instances['body'].updateElement();
      // Form verilerini alın
      var title = document.getElementById('title').value;
      var body = document.getElementById('body').value;
      var category_id = document.getElementById('category_id').value;

      // Eğer title veya body boş ise, bir uyarı mesajı gösterin
      if (title == "" || body == "") {
        alert("Başlık ve içerik alanları boş bırakılamaz!");
        return;
      }

      // Ajax isteği oluşturun
          var xhr = new XMLHttpRequest();
          xhr.open('POST', 'duyuru_ekle_islem.php', true);
          xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
          xhr.onload = function() {
            if (this.status == 200) {
              // Duyuru ekleme işleminin başarılı olup olmadığını kontrol edin
              if (this.responseText == "Duyuru başarıyla eklendi") {
                // Başarılı ise bir mesaj gösterin
                alert("Duyuru başarıyla eklendi");
              } else {
                // Başarısız ise bir hata mesajı gösterin
                alert("Hata: " + this.responseText);
              }
            }
          }

      // Form verilerini gönderin
      var data = "title=" + title + "&body=" + body + "&category_id=" + category_id;
      xhr.send(data);

      e.preventDefault();
    }
</script>
Duyuru_ekle_islem.php dosya içeriğim;

<?php

require_once('config.php');
if(!$mail->send()) {
// E-posta gönderilemedi
echo 'E-posta gönderilemedi: ' . $mail->ErrorInfo;
} else {
// E-posta başarıyla gönderildi
echo 'E-posta başarıyla gönderildi.';
}

// Verileri veritabanına ekleyen SQL sorgusunu oluşturun
$sql = "INSERT INTO announcements (title, body, category_id) VALUES ('$title', '$body', '$category_id')";

// SQL sorgusunu çalıştırın
if (mysqli_query($conn, $sql)) {
  // Sorgu başarıyla çalıştırıldıysa, post eklendi
  echo 'Post eklendi';
} else {
  // Sorgu çalıştırılamadıysa, hata mesajını yazdırın
  echo 'Post eklenemedi: ' . mysqli_error($conn);
}

// Veritabanı bağlantısını kapatın
mysqli_close($conn);

?>