Это мой код контроллеров «contract.php»
function delete($con_id){
//$year=$this->session->userdata('year');
$path = ('/assets/upload/employees/contracts/');
$get_file = $path.$con_id.'.jpg';
$this->db->where('con_id',$con_id);
$this->db->delete('sch_emp_contract');
if(file_exists($get_file)){
unlink(base_url("/assets/upload/employees/contracts/'.$con_id."));
}
$m='';
$p='';
if(isset($_GET['m'])){
$m=$_GET['m'];
}
if(isset($_GET['p'])){
$p=$_GET['p'];
}
redirect("employee/contract?m=$m&p=$p");
}
Этот код Посмотреть contract_list.php
— Кнопка Удалить
<td width="1%" class="remove_tag">';
if($this->green->gAction("D")){
$tr .='<a title="Delete Contract" id="clk_del" class="clk_del">
<img rel="'.$contract['con_id'].'" src="'.site_url('../assets/images/icons/delete.png').'" onclick="delete_contrac (event);" style="width:20px;height:20px;"></a>';}$tr .='</td>
функция
function delete_contract(event){
var r = confirm("Are you sure to delete this record !");
if( r == true){
var contr_id= $(event.target).attr('rel');
location.href="<?PHP echo site_url('employee/contract/delete');?>/"+contr_id+"?<?php echo "m=$m&p=$p" ?>";
}
}
Успешное удаление из базы данных, но файл папки и загрузка изображения не могут быть удалены.
base_url()
функция возвращает url
вашего проекта, но здесь вы должны использовать путь к каталогу файла, который вы хотите удалить.
$path = BASEPATH.'/assets/upload/employees/contracts/';
$get_file = $path.$con_id.'.jpg';
if(file_exists($get_file)){
unlink($get_file);
}
вместо
unlink(base_url("/assets/upload/employees/contracts/'.$con_id."));
Проверьте, если ваш file_exists
возвращает истину или ложь. Тогда попробуйте что-то вроде этого.
$path = BASEPATH.'/assets/upload/employees/contracts/';//get absolute path
$get_file = $path.$con_id.'.jpg';
$this->db->where('con_id',$con_id);
$this->db->delete('sch_emp_contract');
if(file_exists($get_file)){
unlink($get_file);
}