如果我的additional_infos 表包含一些在本例中为空的内容(联系人、姓名和地址),我会尝试将用户重定向到另一个页面。
我现在已经做了类似的事情:
但即使联系人、姓名和地址已填写,它仍然将我重定向到另一个页面。有人能帮我吗?提前致谢
public function test(Request $request){
$additional_info = DB::table('additional_infos') ->where('address',NULL)->orWhere('name', NULL)->orWhere('number')->get();
//request input //ignore this part
if( $additional_info) {
return redirect(url('/user/showupdate6/'.$id->id.'/edit6') );
} else {
return redirect('/home');
}
}
如果我的数据名称、联系人和地址已填写,我希望它能够将我重定向到主页。如果我的数据名称、联系人和地址为空,我希望它将我重定向到此网址,url('/user/showupdate6/'.$id->id.'/edit6')
你永远不会得到 null,这样你就可以像这样在 if 中测试它if( $additional_info)
它总是评估为 true,because即使没有满足条件的元素,它也将始终返回一个集合,它将返回一个不为 null 的空集合。
您有三个选择:
Use ->get()
并添加->count()
在 if 语句中if($additional_info->count())
Replace ->get()
by ->first()
然后离开if($additional_info)
Replace ->get()
by ->count()
and if($additional_info > 0)
尝试使用whereNull
and orWhereNull
像这样 :
public function test(Request $request){
$additional_info = DB::table('additional_infos')
->whereNull('address')
->orWhereNull('name')
->orWhereNull('number')
->get();
//request input //ignore this part
if( $additional_info->count())
return redirect(url('/user/showupdate6/'.$id->id.'/edit6') );
else{
return redirect('/home');
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)