用户名存储在我的会话中。我正在休假管理模块上。 我的请假模块的表包含以下字段 用户名,休假类型,持续时间,状态和操作。 除了用户名之外,我还可以在列表视图中插入并列出所有详细信息。 但是我的用户名是存储在会话中。 我如何从会话中获取它并存储在“用户名”字段中的数据库中?
查看文件中的代码
@if(Session::has('key'))
<?php $username = Session::get('key')['username']; ?>
@endif
<input type="hidden" name="username" value="<?php echo $username ?>">
我的控制器文件中的代码
public function leaveApplication(Request $request)
{
$leave = new LeaveManagement();
$leave->username = $request->get('username');
$leave->leaveType = $request->get('leaveType');
$leave->startDate = $request->get('startDate');
$leave->endDate = $request->get('endDate');
$leave->fromLeave = $request->get('fromLeave');
$leave->fromHalfDayLeaveType = $request->get('fromHalfDayLeaveType');
$leave->toLeave = $request->get('toLeave');
$leave->toHalfDayLeaveType = $request->get('toHalfDayLeaveType');
$leave->fullDayLeave = $request->get('fullDayLeave');
$leave->typeOfLeave = $request->get('typeOfLeave');
$leave->reasonForLeave =$request->get('reasonForLeave');
$leave->status = 'Pending';
$leave->save();
return redirect('leave');
}
答案 0 :(得分:0)
登录后,Auth将在其中维护用户表字段。您可以像这样访问它-
echo Auth::user()->name or echo Auth::user()->email
它将返回预期值:“用户名”和“ useremail@domain.com”。
如果您不使用Auth,则可以从会话中获取用户名,然后将其保存在数据库中-
$user = session()->get('user')
$username = $user->username;
$leave = new LeaveManagement();
$leave->username = $username;
$leave->save();
希望这会对您有所帮助。
答案 1 :(得分:0)
您可以使用Laravel全局会话帮助程序:session(keyName)
。
要从会话获取用户名并将其存储在数据库中:
$username = session('username');
$leave = new Leave();
$leave->username = $username;
$leave->save();
有关Laravel会话的更多信息,请参见Laravel Session
答案 2 :(得分:0)
您可以从会话中获取对象并访问其属性。类似
$user = session()->get('user')
$username = $user->username
或登录后,您可以使用以下方式访问用户的用户名:
auth()->user()->username