#php #filezilla
#php #filezilla
Вопрос:
У меня есть блог, где вы также можете добавлять изображения и видео. Проблема, с которой я сталкиваюсь, заключается в том, что когда я удаляю блог, изображение или видео все еще будут на сервере, а слишком много файлов на сервере вредно для сервера. После некоторых исследований я нашел unlink()
функцию. Итак, я попробовал это, но это не работает. изображения не будут удалены с сервера. Это только удаляет их из базы данных.
Что я пробовал
if(isset($_POST['deleteSubcat'])){
$del = $_POST['deleteSubcat'];
DeleteSubCat($del);
}
function DeleteSubCat($del){
include '../../../include/dbConnection/dbcon.php';
//to skip the update query because the item is about to delete.
$type = '1';
// DeleteVideo($del, $type);
//deletes subcat from tables hw_subcategorie.
$sqldelete = 'DELETE FROM hw_subcategorie WHERE subcategorie_id = "'.$del.'"';
//if query is done right then 'Record updated successfully'
if (mysqli_query($conn, $sqldelete)) {
$sqlimg = 'SELECT video_link FROM hw_subcategorie WHERE subcategorie_id = "'.$del.'"';
$result = mysqli_query($conn,$sqlimg);
$row = mysqli_fetch_array($result, MYSQLI_ASSOC);
unlink("video/".$row["video_link"]);
echo "Record deleted successfully";
} else {
echo "Error deleted record: " . mysqli_error($conn);
}
}
Комментарии:
1. Вы уверены, что путь к
unlink()
правильный? Это показывает какую-то ошибку?2. да, я уверен, что могу показать вам свою структуру папок
3. Вы удаляете и после того, как вы ищете то
id
, которое было удалено4. @dm707 я пробовал оба способа, но оба не сработали.
5. Итак, укажите свою структуру папок
Ответ №1:
Вы пытаетесь выполнить поиск в удаленной записи, чтобы удалить видео с сервера.
Выполните выбор перед удалением:
function DeleteSubCat($del){
include '../../../include/dbConnection/dbcon.php';
//to skip the update query because the item is about to delete.
$type = '1';
// Get the video link before delete it from db
$sqlimg = 'SELECT video_link FROM hw_subcategorie WHERE subcategorie_id = "'.$del.'"';
$result = mysqli_query($conn,$sqlimg);
$row = mysqli_fetch_array($result, MYSQLI_ASSOC);
$videoLink = $row["video_link"];
unlink("video/".$videoLink);
//deletes subcat from tables hw_subcategorie.
$sqldelete = 'DELETE FROM hw_subcategorie WHERE subcategorie_id = "'.$del.'"';
//if query is done right then 'Record updated successfully'
if (mysqli_query($conn, $sqldelete)) {
echo "Record deleted successfully";
} else {
echo "Error deleted record: " . mysqli_error($conn);
}
}