如果单击 Laravel 中的 javascript 框上的确认,如何也从文件夹和表中删除图像

云软

我正在 Laravel 5.4 中进行 CRUD 操作。我正在从数据库和存储中删除图像。我做到了,但它仅从数据库中删除图像名称。并且不要从存储文件夹中删除。

我正在做另一件事,如果我点击删除按钮,那么应该显示一个确认框。如果单击是,则删除,否则不删除。但它也不起作用。

我的 web.php 是:

Route::resource('todo','todocontroller');

我的 todocontroller.php 是:

<?php

namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\todo;

class todocontroller extends Controller
{

public function index()
{
    $todos = todo::paginate('3');
    return view('todo.home',compact('todos'));
}

public function destroy($id)
{
    $todos = todo::find($id);

    if(\File::exists(public_path('public/storage/images/'.$todos->image))){
    \File::delete(public_path('public/storage/images/'.$todos->image));
    }

    $todos->delete();
    session()->flash('message','Deleted Successful');
    return redirect('todo');
}
}

我的 home.blade.php 是:

@extends('layout.app')

@section('body')
<br>
@if(session()->has('message'))
{{session()->get('message')}}
@endif

 <div class="col-lg-4 col-lg-offset-4"><a href="todo/create" class="btn btn-info">Add new</a>
    <h1>Todo Lists</h1>
    <ul class="list-group">
        @foreach($todos as $todo)
  <li class="list-group-item d-flex justify-content-between align-items-center">
<span><img src="{{asset('public/storage/images/'.$todo->image)}}" style="height: 100px;width: 100px;"></span>

<a href="{{'todo/'.$todo->id}}">{{$todo->title}}</a>
{{$todo->body}}

<span>
  <form class="delete" action="{{'todo/'.$todo->id}}" method="POST">
    {{csrf_field()}}
    {{method_field('DELETE')}}
<button type="submit">Delete</button>
  </form>
 </span>
</li>
@endforeach

{{$todos->links()}}
</ul>

</div>
<script>
$(".delete").on("submit", function(){
    return confirm("Do you want to delete this item?");
});
</script>

@endsection
Lakhwinder Singh |

您似乎给出了错误的图像目录路径。这就是删除图像不起作用的原因。

public function destroy($id)
{
    $todos = todo::find($id);

    if(\File::exists(public_path('storage/images/'.$todos->image))){
    \File::delete(public_path('storage/images/'.$todos->image));
    }

    $todos->delete();
    session()->flash('message','Deleted Successful');
    return redirect('todo');
}

我认为这会奏效。

编辑过的home.blade.php文件

@extends('layout.app')

@section('body')
<br>
@if(session()->has('message'))
    {{session()->get('message')}}
@endif

 <div class="col-lg-4 col-lg-offset-4"><a href="todo/create" class="btn btn-info">Add new</a>
    <h1>Todo Lists</h1>
    <ul class="list-group">
        @foreach($todos as $todo)
            <li class="list-group-item d-flex justify-content-between align-items-center">
                <span>
                    <img src="{{asset('public/storage/images/'.$todo->image)}}" style="height: 100px;width: 100px;">
                </span>
                <a href="{{'todo/'.$todo->id}}">{{$todo->title}}</a>
                {{$todo->body}}

                <span>
                    <form class="delete" action="{{'todo/'.$todo->id}}" method="POST" onsubmit="return confirm('Do you really want to submit the form?');">
                        {{csrf_field()}}
                        {{method_field('DELETE')}}
                        <button type="submit">Delete</button>
                    </form>
                </span>
            </li>
        @endforeach
        {{$todos->links()}}
    </ul>
</div>

@endsection

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

删除laravel中的确认

在Laravel中访问公用文件夹中的图像

如果单击,如何删除按钮中的蓝框阴影边框

如何在laravel中打包javascript文件?

如何从Laravel 5(URL数据)的Public / Images文件夹中删除图像

在Laravel中更新时如何删除公共/文件夹中的多个图像?

如何从Laravel的文件夹中删除父级和子级的图像

如果在HTML / Javascript中单击了按钮,是否可以显示完全不同的用户界面?

如果用户在NSIS中单击“后退”按钮,如何清除startmenu文件夹变量值?

Laravel:从javascript中查看

单击JavaScript中的按钮

如果在模式中单击“保存”按钮,如何检查和传递变量?javascript

如果不是在Javascript中

如何删除laravel 5.3中的文件夹?

如果单击 Swift 中的按钮,如何更改图像?

如果用户单击 Javascript 或 Jquery 中的 div,则停止执行函数

如果图像成功保存在 Laravel 上的文件夹中,如何制作文件夹缩略图?

单击时laravel javascript为表中的所有按钮获取相同的ID

如果条件与 Laravel 中的模型

Laravel Blade - 在 javascript 确认中添加变量

是否可以在纯 JavaScript 中在 addEventListenter 上添加“如果未单击”条件?

如果javascript中的模式匹配,如何在按钮单击时显示内容?

单击表 Javascript 中的属性

如果在javascript中单击按钮,则显示而不显示图像

如何在 Javascript 中单击插入图像?

如果......,否则......在javascript中

如果在laravel中删除了表数据行,如何删除文件?

如何在 JavaScript 中更改单击的图像?

Laravel 8:如何删除存储文件夹中的文件