Php 插入或删除后返回同一行中的同一视图。拉维尔
我对laravel和php是新手。在函数完成后,我编写了删除和插入函数的代码。。我需要返回到同一视图,以便用户可以再次删除或插入。 我尝试使用以下代码执行删除功能:Php 插入或删除后返回同一行中的同一视图。拉维尔,php,sql,laravel,Php,Sql,Laravel,我对laravel和php是新手。在函数完成后,我编写了删除和插入函数的代码。。我需要返回到同一视图,以便用户可以再次删除或插入。 我尝试使用以下代码执行删除功能: function deleF(Request $request) { $filename=$request->input('filename'); DB::table('files')->where(['id'=>$filename])->delete(); ret
function deleF(Request $request)
{
$filename=$request->input('filename');
DB::table('files')->where(['id'=>$filename])->delete();
return redirect()->back()->with('alert','deleted');
}
但我有一个错误:
未定义变量:courseN
注意:courseN这个变量是我在视图中使用这个函数之前使用的
更新:
这是包含$courseN的视图部分:
<ul class="nav nav-tabs">
@foreach ($courseN as $cou)
<li>{{$cou->enname}}</li>
@endforeach
</ul>
@foreach($courseN作为$cou)
- {{$cou->enname}
@endforeach
也许您想要返回的上一个视图可以通过POST或get以外的其他方法访问。当您使用back()方法时。您正在通过GET方法重定向回页面。因此,在这里传回数据不是一个解决方案
你只有两个选择
- 您应该将上一页的方法更改为
,以便 可以轻松回到您想要的任何时间GET
- 或者通过AJAX删除项目,这样页面就不需要刷新
据我所知。。上面的函数工作得很好。但是加载视图时没有
courseN
变量,因此会出现错误
尝试更改函数,使其将courseN
变量传递给视图
例如,类似这样的事情:
function deleF(Request $request)
{
$filename=$request->input('filename');
DB::table('files')->where(['id'=>$filename])->delete();
$courseN = 'something it has to be'
return redirect()->back()->with('courseN',$courseN);
}
我想你可以试试这个:
function deleF(Request $request)
{
$filename=$request->input('filename');
DB::table('files')->where(['id'=>$filename])->delete();
$courseN = 'false';
return redirect()->back()->with('courseN',$courseN);
}
希望这为你工作 向我们展示有关如何显示视图的代码它应该正常工作。您的错误与该函数无关。注意:登录函数。。将courseN变量发送到视图并打开视图。在视图中。。我调用deleF函数,然后我需要在调用该行之后返回到视图您是否通过POST方法发送它?是的,它是POST方法这可能是一个注释。我必须使用POST函数这里的问题与缺少的变量无关。它是关于如何访问页面的。正如您所说,您只能通过POST方法访问prev页面,并且您正准备使用back()方法返回,该方法只能为您提供
GET
请求。您应该使用AJAX来删除数据。