我创建了一个脚本,允许从上传的文件夹和数据库中删除图像。此脚本通过AJAX
请求进行处理。我的问题是,图像是从数据库中删除但不在文件夹中。
这是我从文件夹中删除图像的编码 -
if ($numrows == 1) {
$stmt->bind_result($image_id, $member_id, $image);
// define constant for upload folder
define('UPLOAD_DIR', "images/slider/");
while ($stmt->fetch()) {
//echo UPLOAD_DIR."$member_id/$image";
$imagePath = UPLOAD_DIR."$member_id/$image";
echo $imagePath;
if(file_exists($imagePath)) {
unlink($imagePath);
} elseif(is_dir($image)) {
rmdir($image);
}
}
// Make the delete query:
$q = 'DELETE FROM image_info WHERE image_id= ? LIMIT 1';
$stmt = $mysqli->prepare($q);
$stmt->bind_param('i', $imageId);
$stmt->execute();
if ($stmt->affected_rows == 1) {
echo $successAlert;
}
$stmt->close();
unset($stmt);
}
当我回复$imagePath
我找到的路径是正确的时候 - images/slider/18/18_user_banner_1.jpg
我正在努力工作几个小时来解决这个问题。但我仍然没有运气。 希望有人可以帮我解决这个问题。 谢谢。
答案 0 :(得分:1)
您尝试从DOCUMENT_ROOT路径中取代define('UPLOAD_DIR', "images/slider/");
。
例如:
define('UPLOAD_DIR', $_SERVER['DOCUMENT_ROOT']."/images/slider/");