<?php

// Dosya Yükleme Kontrolleri
$config['upload_path'] = './uploads/'; // Dosyaların yükleneceği dizin
$config['allowed_types'] = 'pdf|png'; // İzin verilen dosya türleri
$config['max_size'] = 100; // İzin verilen maksimum dosya boyutu (KB cinsinden)
$config['encrypt_name'] = TRUE; // Yüklenen dosyaların adını şifrelemek için true değerini atayın

// Yükleme bibliyoteki yüklenir
$this->load->library('upload', $config);

// Dosya yükleme işlemi
if (!$this->upload->do_upload('userfile')) {
// Hata durumunda hata mesajını görüntüleyin
$error = array('error' => $this->upload->display_errors());
print_r($error);
} else {
// Başarılı durumda dosya bilgilerini alın
$data = array('upload_data' => $this->upload->data());
$file_path = $data['upload_data']['full_path'];

// Dosya içeriğini inceleyin
$file_contents = file_get_contents($file_path);
if (preg_match('/(<?php|system(|shell_exec(|exec(|passthru(|eval()/', $file_contents)) {
// Tehlikeli içerik tespit edildi, dosyayı silin
unlink($file_path);
echo 'Tehlikeli içerik tespit edildi, dosya silindi.';
} else {
// Dosya güvenli
echo 'Dosya güvenli ve yüklendi.';
}
}
?>