我有四个文本框我想获取用户信息,以防发现四个输入中的任何一个。我尝试下面的代码对我不起作用请指导。
StudentService
也赞成为什么这对我不起作用
先谢谢
答案 0 :(得分:0)
当前的sql结果
select * from `user` where (`email` = ?) or (`phone_number` = ? or `name` = ? or `address` = ?) LIMIT 1
你需要
select * from `user` where (`email` = ?) and (`phone_number` = ? or `name` = ? or `address` = ?) LIMIT 1
试试这个
$userDetail = User::where(function ($query) use ($request) {
$query->where('email', $request->email);
})->orwhere(function ($query) use ($request){
$query->orwhere('phone_number', $request->phone)
->orwhere('name', $request->name)
->orwhere('address', $request->address);
})->first();
答案 1 :(得分:0)
您是否尝试使用大写“W”->orWhere
?在documentation或语句中有大写“W”