Удалить изображение из БД

#javascript #php #database #image

#javascript #php #База данных #изображение

Вопрос:

Я разрабатываю веб-страницу, на которой я могу добавлять / удалять фотографию

У меня есть код, указанный под ней, и он работает нормально, но я не уверен, как удалить фотографию из базы данных, когда она удаляется из папки — есть идеи?

Вот index.php

 <!doctype html>
<html>
    <head>
        <title>How to delete file with jQuery AJAX</title>
        <link href='style.css' rel='stylesheet' type='text/css'>
        <script src='jquery-3.0.0.js' type='text/javascript'></script>
        <script src='script.js' type='text/javascript'></script>
        
    </head>
    <body>
        <div class='container'>
            <div class='content'>
                <img src='images/image1.jpg' id='img_1' width='100' height='100'>
                <span data-id='1'>Delete</span>
            </div>
            <div class='content'>
                <img src='images/image2.jpg' id='img_2' width='100' height='100'>
                <span data-id='2'>Delete</span>
            </div>
            <div class='content'>
                <img src='images/image3.jpg' id='img_3' width='100' height='100'>
                <span data-id='3'>Delete</span>
            </div>
            
        </div>
    </body>
</html> 

Здесь идет script.js

 $(document).ready(function(){

    // Delete
    $('.content span').click(function(){
        var id = $(this).data('id');
 
        // Selecting image source
        var imgElement_src = $( '#img_' id ).attr("src");
        
        // AJAX request
        $.ajax({
            url: 'removefile.php',
            type: 'post',
            data: {path: imgElement_src},
            success: function(response){
                
                // Changing image source when remove
                if(response == 1){
                    $("#img_"   id).attr("src","images/noimage.png");
                }
            }
        });
    });
}); 

И, наконец, удалить file.php

 <?php 


if(isset($_POST['path'])){
   $path = $_POST['path']; 

   // Check file exist or not 
   if( file_exists($path) ){ 
      // Remove file 
      unlink($path); 

      // Set status 
      echo 1; 
   }else{ 
      // Set status 
      echo 0; 
   } 
   die;
} 

У меня также есть файл запроса и файл style.css (который я не показал)

Спасибо за вашу помощь, я заранее!

Комментарии:

1. Вы должны выполнить оба этих действия, когда кто-то нажимает кнопку удалить (это означает, что ваш php-скрипт должен выполнять обе задачи). Если вы знаете, как добавить их в базу данных, у вас также не должно возникнуть проблем с их удалением.

2. Хорошо, но я не совсем уверен, как это сделать с помощью script.js ; Какие-нибудь намеки?

3. Является var id = $(this).data('id'); ли идентификатор изображения?

4. Да, идентификатор изображения 🙂

5. Отправьте это в AJAX data и используйте идентификатор для выполнения DELETE запроса в вашем php-скрипте.