![](/img/trans.png)
[英]How is the best way to create a login for both a user and an admin in Laravel 5.2?
[英]Laravel 5.2 - Login user after create post
我正在做一個項目,所有用戶都可以創建一個帖子並將其發布! 如果用戶未登錄,則啟用帶有電子郵件和密碼的部分來創建帳戶和發布。
我想做:
控制器
// if user NOT registered my form will enable email and password field --
if(!null($request->input('email') && request->input('password'))) {
// create user
$user = new User();
$user->name = $request->input('name');
$user->email = $request->input('email');
$user->password = bcrypt($request->input('name'));
$user->save();
// login user after create user
HOW CAN I LOG USER AFTER CREATED ACCOUNT ???
Thank you for your help!
// Get ID of user created
$get_user_id = User::where('email', '=', $request('email'))->first();
// create post
$post = new Post();
$post->title = $request->input('title');
$post->slug = str_slug($request->input('title'),'-');
$post->country = $request->input('country');
$post->zone = $request->input('zone');
$post->phone = $request->input('phone');
$post->address = $request->input('address');
$post->user_id = $get_user_id->id;
$post->save();
return redirect('/')->with('message-success', 'Post creato con successo!');
// IF USER LOGGED
}else{
$post = new Post();
$post->title = $request->input('title');
$post->slug = str_slug($request->input('title'),'-');
$post->country = $request->input('country');
$post->zone = $request->input('zone');
$post->phone = $request->input('phone');
$post->address = $request->input('address');
$post->user_id = $request->input('user_id');
$post->save();
return redirect('/')->with('message-success', 'Post creato con successo!');
}
不清楚您要在這里做什么,獲取用戶ID的方式不安全。 我建議您使用$ user = Auth :: user(); 而是獲取用戶ID($ user-> id)。
檢查登錄手動使用
if (Auth::attempt(['email' => $email, 'password' => $password])) {}
所以在您的示例中,我將執行以下操作:
if (!Auth::attempt(['email' => $email, 'password' => $password])) {
// create User
} else {
// $userId = Auth::user()->id;
}
// finally create post
將__construct()方法添加到您的類中,並添加以下代碼:
public function __construct() {
$this->middleware('auth', ['except' => ['index', 'show']]);
}
它必須真正起作用
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.