Я новичок в codeigniter, и у меня проблемы с редактированием изображения элемента, не то, что оно не получает обновления, как это происходит, но в каталоге папки загрузки слишком много изображений.
Я хочу, чтобы ранее сохраненное изображение было удалено в каталоге загрузки при обновлении нового изображения.
Вот мой контроллер:
<code>function edit($shop_id = null){
if ( ! $this->ion_auth->logged_in() OR ! $this->ion_auth->is_admin())
{
redirect('auth', 'refresh');
}
/* Breadcrumbs */
$this->data['breadcrumb'] = $this->breadcrumbs->show();
/* Variables */
$tables = $this->config->item('tables', 'ion_auth');
$this->data['shop_id'] = $shop_id;
/* Get all category */
$this->data['shopInfo'] = $this->shop_model->getShopInfo($shop_id);
//echo "<pre>";print_r( $this->data['shopInfo']);echo "
"; выход;
/ * Проверка ввода формы * /
$ this-> form_validation-> set_rules ('shop_name', 'Shop Name', 'trim | required');
$ this-> form_validation-> set_rules ('shop_latidude', 'Shop Latidude', 'trim | required');
$ this-> form_validation-> set_rules ('shop_longitude', 'Shop Longitude', 'trim | required');
if ($ this-> form_validation-> run () == true) {
$ config ['upload_path'] = './assets/uploads/shop/';
// матрица (var_dump (is_dir ($ конфиг [ 'upload_path'])));
$ config ['allow_types'] = 'gif | jpg | png';
$ config ['max_size'] = '1024';
$ config ['overwrite'] = TRUE;
$ this-> load-> library ('upload', $ config);
$ This-> upload-> Initialize (конфигурации $);
$ img = "logo";
$ img_upload = $ this-> upload-> do_upload ($ img);
$ data = $ this-> upload-> data ();
$ file = array ('file_name' => $ data ['file_name']);
$ data = array ('upload_data' => $ this-> upload-> data ());
$ photo = base_url (). 'assets / uploads / shop /'.$ file [' file_name '];
if ($ img_upload == 1) $ post_photo = $ photo;
иначе $ post_photo = $ this-> input-> post ('hidden_photo');
если ($ this-> вход-> пост ( 'статус')) {
$ status = 1;
} Еще {
$ status = 0;
}
$ shopInfo = array (
'shop_name' => $ this-> input-> post ('shop_name'),
'merchant_id' => $ this-> input-> post ('merchant_id'),
'photo' => $ post_photo,
'description' => $ this-> input-> post ('shop_desc'),
'istered_date '=> дата (' Y-m-d H: i: s '),
'is_active' => 1,
'shop_location' => $ this-> input-> post ('shop_loc'),
'shop_address' => $ this-> input-> post ('shop_add'),
'shop_phone' => $ this-> input-> post ('shop_ph'),
'shop_latitude' => $ this-> input-> post ('shop_latidude'),
'shop_longitude' => $ this-> input-> post ('shop_longitude'),
'open_hour' => $ this-> input-> post ('open_hour'),
'close_hour' => $ this-> input-> post ('close_hour'),
'примечание' => $ this-> input-> post ('примечание'),
«утвержден» => $ статус
);
$ this-> shop_model-> shopUpdate ($ shop_id, $ shopInfo);
перенаправление (base_url (). 'admin / shop', 'refresh');
} еще {
$ this-> data ['message'] = (validation_errors ()? validation_errors (): ($ this-> ion_auth-> errors ()? $ this-> ion_auth-> errors (): $ this-> session-> flashdata ( 'сообщение')));
/ * Загрузить шаблон * /
$ this-> data ['merchant'] = $ this-> merchant_model-> getAllMerchants ();
$ this-> template-> admin_render ("admin / shop / edit", $ this-> data);
}
}
Вот моя модель:
function shopUpdate($shop_id, $shopInfo) {
$this->db->where('shop_id', $shop_id);
if($shopInfo) {
$query = $this->db->update('shop', $shopInfo);
if ($query) {
return true;
} else {
return false;
}
} else {
return false;
}
}