2016-08-03 105 views
1

我有以下网址 http://project.su/?invitee=95laravel 5.2:获取查询字符串

首先,我要检查在URL中的invitee,如果URL有invitee那么获得的价值。

我曾尝试(控制器):

if(!empty($request->get('invitee'))){ 
    $user->invitee = $request->get('invitee'); 
} 

下面的代码无法正常工作。

我想将invitee结果(id)存储在数据库中。

谢谢。

+0

你应该使用'$ _GET [“邀请者”]',因为这是一个查询字符串不是Laravel路由的一部分。 – TheFallen

回答

6

要确定是否输入值存在:

if ($request->has('invitee')) { 
     $user->invitee = $request->input('invitee'); 
} 

方法返回true,如果该值存在且不是一个空字符串:

+1

这仅适用于不适用于查询字符串的URL参数。 – TheFallen

+1

我完全不同意@TheFallen – Depzor

+0

这个方法适用于查询字符串。顺便说一句,谢谢@Depzor :) –

0

你打电话$user->save()地方?您应该拨打$user->save()以实际保留数据。

您可以随时通过在第二行后面调用dd($user);进行检查,例如,如果您担心设置不正确,则可以看到$user对象中设置了哪些属性。您也可以用$request->has('invitee')代替!empty($request->get('invitee'))

1

您可以通过获取输入:

$invitee = Input::get('invitee'); 

对于上述5 *

$invitee = $request->input('invitee'); 

或者

$invitee = Request::input('invitee'); 
0

要检查是否invitee参数存在:

if($request->has('invitee')) { 
    // ... 
} 

要获得invitee值:

$invitee = $request->input('invitee');