【发布时间】:2016-01-09 09:03:46
【问题描述】:
在 XAMPP 中删除记录时,我试图从“上传”文件夹中删除所有用户数据,包括所有图像。到目前为止,它正在从表中删除行,但是对于上传文件夹中的图像,我得到了这个错误,
消息:unlink(uploads/property-images/): Permission denied
当我从模型中print_r($rowId); 时,它会很好地回显图像数组。我确信我可能在模型中做错了什么,因为删除函数必须是一个数组,但我不知道该怎么做。
但同时在我的其他脚本中,我已经成功删除并使用取消链接替换了用户的个人资料图片。我想这一次是否有效,而不是“权限”应该不是问题。唯一的区别是这个时间我有一个在脚本中爆炸的图像数组。
在我的控制器中:
function delete_listing_id() {
if($this->session->userdata('is_logged_in')){
$id = $this->uri->segment(3);
$images_urls = $this->my_listings_model->get_property_all_images_url($id);
$this->my_listings_model->delete_listing_images($images_urls);
$this->my_listings_model->delete_listing_id($id);
$this->my_listings();
}
型号:
function get_property_all_images_url($id) {
$this->db->select('property_images');
$this->db->from('vbc_property_images');
$this->db->where('property_ref_id', $id);
$query = $this->db->get();
$query_result = $query->result_array();
if (empty($query_result)) {
return FALSE;
}
elseif (count($query_result) > 1) {
return 0;
}
else{
$rowId = explode(',',$query_result[0]['property_images']);
return $rowId;
}
}
function delete_listing_id($id){
$this->db->delete('vbc_vacation_item_attri', array('vbc_item_id' => $id));
$this->db->delete('vbc_property_amenities', array('v_ref_id' => $id));
$this->db->delete('vbc_property_images', array('property_ref_id' => $id));
}
function delete_listing_images($images_urls) {
unlink('uploads/property-images/'.$images_urls);
return TRUE;
}
【问题讨论】:
-
请告诉我你会在 $images_urls 中得到什么?可以发在这里吗?
-
@jilesh,你的意思是当我从模型中 print_r(rowId) 时?
-
我的意思是 print_r($images_urls) 进入控制器
-
很抱歉它说... Array ( [0] => property_image_19.jpg [1] => property_image_110.jpg [2] => property_image_111.jpg [3] => property_image_112.jpg [4] => property_image_113.jpg [5] => property_image_114.jpg)
-
请在您的代码中尝试我的答案,它会起作用
标签: php codeigniter codeigniter-3