Php 在数据库中存储当前登录的用户id

Php 在数据库中存储当前登录的用户id,php,laravel,Php,Laravel,我正在我的应用程序上处理某些模型,在我的用户控制器中,我需要商店登录用户id来知道谁创建/编辑了某些模型,在用户界面中,我有此代码 <?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\User; use Auth; use File; class UserController extends Controller { /** * Create a new contro

我正在我的应用程序上处理某些模型,在我的用户控制器中,我需要商店登录用户id来知道谁创建/编辑了某些模型,在用户界面中,我有此代码

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\User;
use Auth;
use File;

class UserController extends Controller
{

    /**
     * Create a new controller instance.
     * @return void
     */
    public function __construct()
    {
        $this->middleware('auth');
    }

    /**
     * Store a newly created resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    public function store(Request $request)
    {
        // Verificamos si el email existe y otros datos del usuario
        $user = Auth::user();

        $request->validate([
            // {...}
            'created_by' => 'required|string'
        ]);

        $created_by = Auth::user()->id;

        User::create($request->all());

        return redirect()->route('user.index')->with('user-created','Usuario creado exitosamente.');
    }

    /**
     * Update the specified resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function update(Request $request, $id)
    {
        // Verificamos si el email existe y otros datos del usuaro
        $user = Auth::user();

        // Validamos datos
        $data = $this->validate($request, [
            // {...}
        ]);

        // Recogemos los campos del usuario
        // {...}
        $modified_by    = Auth::user()->id;

        $user->fill($data);
        $user->save();

        return redirect()->route('user.show', $user->id)->with(['user-updated' => 'Usuario actualizado correctamente']);
    }
}

如果您只需要id,可以使用Auth::id()

您可以使用Auth
Auth::user()->id调用用户id


您也可以使用
Auth
调用用户上的任何列,只需更改id即可。

我假设您已在用户表中创建了用户修改用户

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\User;
use Auth;
use File;

class UserController extends Controller
{

    /**
     * Create a new controller instance.
     * @return void
     */
    public function __construct()
    {
        $this->middleware('auth');
    }

    /**
     * Store a newly created resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    public function store(Request $request)
    {
        // Verificamos si el email existe y otros datos del usuario
        $user = Auth::user();

        $request->validate([
            // {...}
            'created_by' => 'required|string'
        ]);


       //for example you have firstname, lastname, age, and address columns in your users table
        $created_by = Auth::user()->id;
        User::create([
            'firstname' => $request->firstname,
            'lastname' => $request->lastname,
            'age' => $request->age,
            'address' => $request->address,
            'created_by' => $created_by
        ]));

        return redirect()->route('user.index')->with('user-created','Usuario creado exitosamente.');
    }

    /**
     * Update the specified resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function update(Request $request, $id)
    {
        // Verificamos si el email existe y otros datos del usuaro
        $user = Auth::user();

        // Validamos datos
        $data = $this->validate($request, [
            // {...}
        ]);

        // Recogemos los campos del usuario
        // {...}
        $modified_by    = Auth::user()->id;

        User::find($id)->update([
             'firstname' => $request->firstname,
             'lastname' => $request->lastname,
             'age' => $request->age,
             'address' => $request->address,
             'modified_by' => $modified_by
         ]));


        return redirect()->route('user.show', $user->id)->with(['user-updated' => 'Usuario actualizado correctamente']);
    }
}