Вы смешиваете и путаете события JavaScript с кодом Codeigniter так, что это не сработает. Вам нужно передать идентификатор файла, который вы хотите удалить. Я предлагаю вам разрешить вашему контроллеру получить параметр для файла, который вы хотите удалить:
public function deleteFile($fileName) { // SET THE FILE NAME AS PARAMETER
// Make sure to also set the variable $user_id here in some appropriate way
if ($this->images_model->delete_file($user_id, $fileName)) {
$status = 'success';
$msg = 'File successfully deleted';
}else{
$status = 'error';
$msg = 'Something went wrong when deleting the file, please try again';
}
echo json_encode(array('status' => $status, 'msg' => $msg));
}
А ссылка для удаления файла может быть простой ссылкой с именем файла в качестве параметра, который можно указать при рендеринге страницы:
<a href="/deleteFile/<?=$filename?>">Delete</a>
Но я думаю, из вашего кода, что вы хотите некоторую обработку AJAX через запрос GET или POST для обработки ответа JSON. То, как вы это настроите, зависит от того, какую библиотеку JavaScript или другой подход вы используете. Вам нужно написать функцию JavaScript для обработки запроса. Ссылка может быть что-то вроде:
<input type="image" id="delete-profile-img" src="<?= base_url('/assets/images/delete-icon-gray.png') ?>" title="Delete Image" onclick="delete(<?=$fielname?>)" >
И функция JavaScript может выглядеть примерно так, если вы используете Jquery:
function delete(filename){
var url = '/deleteFile/'+ filename;
$.get(url, function(obj) {
//console.log(obj);
// DO SOMETHING WITH THE RESPONSE HERE...
})
}