我在laravel登录中使用默认的auth()(电子邮件和密码) 现在我尝试从文本字段中获取用户的输入,如(年龄或城市)
现在我想在我的会话中存储(年龄/城市)。
帮帮我
答案 0 :(得分:4)
您可以使用session()
帮助:
session('age', 18); // saves age into session
$age = session('age')`; // gets age from session
<强>更新强>
如果要在用户注册后保存年龄和城市,则应将此数据存储在数据库中,而不是存储在会话中。您可以使用create
app\Http\Controllers\Auth\AuthController.php
方法添加一些文件
答案 1 :(得分:1)
您可以使用
Session::put('key', 'value');
从会话使用中获取密钥
Session::get('key');
您可以将session()
辅助函数用作 @Alexey Mezenin 答案。
答案 2 :(得分:0)
好的,让我来启发你。如果你想把它存储在会话中就这样做。
int
main(int argc, char *argv[])
{
int t, tt, status, i;
i = 1;
for (i=1; i < argc; i++)
{
t = parse(argv[i]);
tt = wait(&status);
assert(tt == t);
if ((! WIFEXITED(status)) || (WEXITSTATUS(status) != 0)) {
fprintf(stderr, "Command '%s' failed, aborting...", argv[i]));
return 1;
}
}
return 0;
}
但这不像我们在Laravel中那样做框架,它使用模型
每次刷新页面时,一旦用户通过身份验证,应用程序将查找数据库用户表是否存在于表中的用户。经过身份验证的用户模型也是用户模型。通过它,我们可以提取任何列。首先是为User类(Model)$ fillable数组添加额外的字段。 所以它看起来像这样。
<强> user.php的强>
session('country', $user->country); // save
$country = session('country')`; // retrieve
所以只需使用Request class或Auth facade登录用户名和密码即可。门面不是太推荐所以这里为了你的好,作为一个新的我会说如何使用请求。假设您要在TestController.php中检索您的Authenticated用户所在国家/地区,这里是如何在方法中使用它。
<强> TestController.php 强>
protected $fillable = ['username', 'password', 'remember_token', 'country'];
答案 3 :(得分:0)
使用请求
公共功能ControllerName(请求$请求){
$request->session()->put('session_age', $age);
}
获取session_age
$get_session_age = $request->session()->get('session_age');
使用会话
public function ControllerName (){
Session::put('age',$age);
}
获取会话
$session_age = Session::get('age');
不要忘记在控制器中定义会话或请求!!!
use App\Http\Requests;
use Session;
答案 4 :(得分:0)
要在控制器中使用会话,您需要先在控制器中包含会话
use Session;
之后会话中的商店数据。有几种方法可以做到这一点。我更喜欢这个(在控制器中)
session()->put('key',$value);
要在View中显示会话数据,您可以这样做
@if(Session::has('key'))
I'v got session data
@else
I don't have session data
@endif
要在Controller中获取会话数据,您可以这样做
session()->get('key')
//or
session()->get('key','defaul_value_if_session_dont_exist')
在会话中完成数据后,您可以将其删除(在控制器中)
session()->forget('key');
会话的所有这些基本用法都在官方Laravel文档here中有详细记录。
希望它可以帮到你