Удаления файлов PHP

133
05 октября 2019, 08:20

По нажатию на елемент хочу удалять файлы из бд и сервера, но получаю пустой ответ от сервера и ошибку:

status: 500,
responseText: "",
statusText: "Internal Server Error"

$('#js-remove').click(function(){ 
       let id =  $(this).attr('data-id'); 
        $.ajax({ 
            type: "POST", 
            url: 'remove.php', 
            data: {'id': id }, 
            dataType: "json", 
            cache: false, 
            success: function (respond) { 
                console.log('good'); 
                console.log(respond); 
             }, 
             error:function(respond){ 
                console.log('bad'); 
                console.log(respond); 
             } 
        }); 
    }); 
     
//PHP 
 
$connect_to_db = mysql_connect($db_host, $db_username, $db_password) 
or die("Could not connect: " . mysql_error()); 
 
mysql_select_db($db_name, $connect_to_db) 
or die("Could not select DB: " . mysql_error()); 
 
 $id = $_POST['id']; 
 
$rmfile = mysql_query("SELECT img1,img2,img3,img4,img5,img6,img7,img8 FROM cars WHERE id = '$id'")  
 
while ($row = mysql_fetch_assoc($rmfile)) { 
    foreach ($row as $key => $value) { 
        unlink('../img/uppcars/'.$value.'.jpg'); 
    } 
} 
$remove = mysql_query("DELETE FROM cars WHERE id = $id"); 
mysql_close($connect_to_db);
<button data-id="374esndas3had" id="js-remove">Delete</button>

Answer 1

Ошибки 500 это ошибки на уровне сервера, советую посмотреть логи или сделать вывод ошибок в браузер (через php.ini, .htaccess или прямо в коде задать)

Проблем может быть много, от подключения к бд до наличия удаляемого файла на сервере

Файл перед удалением нужно проверить через file_exists() например

$rmfile = mysql_query("SELECT img1,img2,img3,img4,img5,img6,img7,img8 FROM cars WHERE id = '$id'")

Для начала попробуйте убрать '' у $id

READ ALSO
Поиск текста по регулярным выражениям php

Поиск текста по регулярным выражениям php

Перепробовал все варианты не могу найти решениеЕсть строчка "Volvo XC40 (2018) интерьер" собственно нужно найти слово "интерьер" но это слово встречается...

110
Откат транзакции в PHP (MariaDB, InnoDB) при нескольких параллельных транзакциях изменяющих одинаковые поля

Откат транзакции в PHP (MariaDB, InnoDB) при нескольких параллельных транзакциях изменяющих одинаковые поля

У меня есть несколько PHP кодов с PDO транзакциями, измняющими одинаковые поля в базе данныхКоды могут запускаться в разные моменты времени

120
Содержимого формы нет в письме

Содержимого формы нет в письме

Настроил скрипт отправки формы, письмо доходит, но без данных формыФорма:

116
Laravel ошибка про имэйл

Laravel ошибка про имэйл

сама ошибка

90