获取URL参数以验证Laravel中的登录控制器
我正在尝试获取此文件的获取URL参数以验证Laravel中的登录控制器,laravel,get-request,getmethod,Laravel,Get Request,Getmethod,我正在尝试获取此文件的url参数 http://localhost:8000/login?merchId=ABC¶m1=abc123¶m2=abc123 每当这些参数重定向到我的登录页面时,它们都会从另一个站点发送,我的项目的登录页面应该获得所有这些参数,并在我的控制器中执行一些逻辑任务 如上所述,我需要得到ff的值: merchId、param1和param2 在php native中,我可以简单地使用此代码来获取这些参数 使用此选项: $merchId = $_GET['me
url参数
http://localhost:8000/login?merchId=ABC¶m1=abc123¶m2=abc123
每当这些参数重定向到我的登录页面时,它们都会从另一个站点发送,我的项目的登录页面应该获得所有这些参数,并在我的控制器中执行一些逻辑任务
如上所述,我需要得到ff的值:
merchId、param1和param2
在php native
中,我可以简单地使用此代码来获取这些参数
使用此选项:
$merchId = $_GET['merchId'];
$param1 = $_GET['param1'];
$param2 = $_GET['param2'];
但还有另一种方法
目前我正在使用的项目登录名是Auth
这是我的LoginController.php,我想在这里使用和获取url参数并执行一些操作
class LoginController extends Controller
{
use AuthenticatesUsers;
protected function authenticated(Request $request, User $user){
if($user->is_admin == 1){
return redirect('/admin/view/all');
}
else{
return redirect('/reseller/reservation/view');
}
}
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('guest')->except('logout');
}
}
这是我的路线
Route::get('/','HomeController@index');
Route::group(['middleware'=> ['auth']], function(){
Route::get('/reseller/reservation/view','ResellerController@reservation');
Other routes included here no need to show......
});
这是我的家庭控制器
public function __construct()
{
$this->middleware('auth');
}
/**
* Show the application dashboard.
*
* @return \Illuminate\Contracts\Support\Renderable
*/
public function index()
{
$searched = 0;
$reseller = User::orderBy('created_at', 'desc')
->where('is_blocked', '0')
->where('is_admin', '0')
->paginate(20);
return view('pages.admin.view', compact('reseller', 'searched'));
}
public function admin(Request $req){
return view('middleware')->withMessage("Admin");
}
从查询字符串中检索输入
当输入方法从整个请求负载(包括查询字符串)中检索值时,查询方法将仅从查询字符串中检索值:
$name = $request->query('name');
如果请求的查询字符串值数据不存在,则将返回此方法的第二个参数:
$name = $request->query('name', 'Helen');
您可以在不带任何参数的情况下调用查询方法,以便将所有查询字符串值作为关联数组检索:
$query = $request->query();
我想,我找到了解决办法 在我的login.blade.php中, 我尝试使用此代码获取url参数
if(isset($_GET['merchId'])){
$merchId = $_GET['merchId'];
}else{
$merchId = "none";
}
并在我的表单操作
差不多
<input type="text" name="merchId" value="<?= $merchId ?>" >
结果是这样的
{"_token":"2UvDCxls3WY27h8GpEJTJ8oZytfl1LmkseIU0hWY","merchId":"22","email":"keighdee@gmail.com","password":"mycrush"}
我知道这不是一个很好的做法,但如果您对此问题有更好的答案,仍然可以自由回答或评论此问题您好,也可以向我的LoginController尝试一下,如果get正常工作但没有发生任何事,请输入
$name=$request->query('name');返回重定向('/reseller/reservation/view?cust='.$name)
重定向工作正常,但是cust
参数没有值,因为我尝试在其上添加“$name”。这个代码有问题吗?@KingRG没有,除非查询为空,否则该代码应该可以工作。这些示例直接来自文档,可以使用。如果没有,它不应该在这一部分。嗯,我认为LoginController没有得到url参数的值。转储$request
以查看它得到了什么,这就是我开始调试的地方。当我尝试回答第二个参数时,如果请求的查询字符串值不存在,helen将替换为新值。当我试着穿上我的时,海伦出现了。控制器无法识别或获取名称
及其值
{"_token":"2UvDCxls3WY27h8GpEJTJ8oZytfl1LmkseIU0hWY","merchId":"22","email":"keighdee@gmail.com","password":"mycrush"}