Truy vấn này đang xóa tất cả các danh mục khỏi bài đăng của bạn vì bạn đang nói với bạn mệnh đề where. Về cơ bản, bạn đang nói, xóa mọi bản ghi khỏi bảng posts_categories có id bài đăng =$ post_id. Bạn cần thêm mệnh đề where của mình để làm cho nó cụ thể hơn.
$delete_id = mysqli_query($mysqli,"DELETE FROM posts_categories WHERE post_id = '" . $post_id . "' AND categoryID = '". $query_cat_id[$x] ."'");
Điều này bây giờ cho biết điều tương tự như bạn đã làm nhưng thêm một định lượng bổ sung. Chỉ xóa các hàng khỏi bảng có post_id là $ post_id và ID của danh mục là (giá trị của hộp kiểm không được chọn của bạn).
Tuyên bố từ chối trách nhiệm:Tôi đang phỏng đoán vị trí bạn đang lưu trữ các ID danh mục trong hàm của mình ($ query_cat_id [$ x]).