php - 在ajax中获取图像路径并在laravel 5.4中删除该图像

标签 php jquery ajax laravel

我在我的项目中使用 laravel 5.4 我在源文件中显示了我的图像 在 laravel Blade 中它可以正确显示图像..

 <div  id="dis_img">
                    @foreach($detail_dir_imgs as $detail_dir_img)
                      <img src="{{ asset($detail_dir_img) }}" height="230" width="200" id="pro_img">
                      <span class="del_proimg">X</span>
                    @endforeach
                  </div> 

现在我在 del_proimg click 函数中获得了图像 src 属性,这意味着我想在单击此 id 时删除图像,并且我的 click 函数中的代码是

$('.del_proimg').click(function(){
      var img= $('#pro_img').attr("src");
      alert(img);
       $.ajax({
        type: "GET",
        url: '/deleteimg',
        data: {'img':img},
        success: function(data){
          console.log("ajaxdata",data);
        },
        error: function(jqXHR, textStatus, errorThrown) {
          console.log(JSON.stringify(jqXHR));
          console.log("AJAX error: " + textStatus + ' : ' + errorThrown);
        }
      });
    });

当单击 id 时,它会获取图像路径并将数据传递给 Controller ​​,一切正常,但在我的 Controller 中,当我尝试删除图像路径时,它不会删除图像,并且我的 Controller 代码是

  public function deleteimg(Request $request){
            $img =$request->img;
            @unlink(public_path( $img));
            return Response::json([
              'message' => $request->img
          ], 200);

        }

这是正确的吗,我也尝试过File::delete($img),但它不会删除我文件夹中的图像,但没有显示错误,请任何人帮助我解决此问题

最佳答案

您将整个图像源作为 $img 传递给函数deleteimg。刚刚发送了图像名称。然后使用 unlink(PATH TO YOUR IMAGE "/"IMAGE NAME)。 就像您可以将图像保存在 public/uploads 中,然后使用 unlink(public_path().'/uploads/'.$imageName);

关于php - 在ajax中获取图像路径并在laravel 5.4中删除该图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44025796/

相关文章:

java - 使用 GWT 开发类似 google maps 的 Ajax 客户端

php - 如何获得两个连接变量的最大值

php - 单击链接时设置 session 变量

c# - Atata - 等待 jQuery AJAX 调用完成时超时

jquery - select2 使用 jquery 动态改变值

javascript - 一次显示一个弹出窗口

php使用pdo简单登录系统问题

php - 如果用户滚动(JQuery),则禁用 div 上的自动刷新

javascript - 如何提取属性中值的一部分

javascript - 为什么输入文本字段不出现