Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/255.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php laravel中当前登录用户的数据获取_Php_Mysql_Laravel - Fatal编程技术网

Php laravel中当前登录用户的数据获取

Php laravel中当前登录用户的数据获取,php,mysql,laravel,Php,Mysql,Laravel,你好,朋友,我正在尝试获取laravel中当前登录用户的数据,但我正在获取所有用户的数据,我的意思是我有两个表。一个是存储登录用户数据的用户表,另一个是存储registerd用户发布结果的发布表。如何获取当前登录用户发布的数据。发布和用户通过用户id foregion键连接。 这里给出了我的代码 Publication.blade.php @extends('layouts.app') @section('content') <div class="container"><

你好,朋友,我正在尝试获取laravel中当前登录用户的数据,但我正在获取所有用户的数据,我的意思是我有两个表。一个是存储登录用户数据的用户表,另一个是存储registerd用户发布结果的发布表。如何获取当前登录用户发布的数据。发布和用户通过用户id foregion键连接。 这里给出了我的代码

Publication.blade.php

@extends('layouts.app')
@section('content')


<div class="container"><br>
    <h1 class="text-success text-center">Your Publications</h1><br>
    <table  class="table table-bordered">
        <tr class="">
            <th>Publication Title</th>
            <th>Publication Status</th>
            <th>Year</th>
            <th>More Actions</th>
        </tr>
        @foreach($data as $value)
        <tr>
            <td> {{ $value ->title}}</td>
            <td>{{ $value ->status}}</td>
            <td>{{ $value ->year}}</td>
            <td><a href=""><button>Edit</button></a>&nbsp;<a href=""><button>Delete</button></a></td>
        </tr>
        @endforeach

    </table>
    <button class="btn btn-info" data-toggle="collapse" data-target="#demo">Add more publications here</button> <button class="btn btn primary"><a href="home">Go Back to Dashboard</a></button><br>
    <div id="demo" class="collapse">
    <h3 class="text-success text-center">Complete your publication's detail</h3><br>
    <div class="col-md-offset-3 col-md-6 m-auto d-block">
        <form action="pub" method="post">

            <input type="hidden" name="_token" value="{{csrf_token()}}">

            <div>
                <div class="form-group">
                    <label>Title </label>
                    <input type="text" name="title" id="" class="form-control">

                </div>

                <div class="form-group">
                    <label>Conference / General </label>
                    <div class="radio form-control">
                        <label class="col-md-4"><input type="radio" name="status" value="conf" >Conference</label>

                        <label class="col-md-4"><input type="radio" name="status"  value="general">General</label>
                        <label><input type="radio" name="status" value="other" >Other</label>
                        </div>
                </div>

                <div class="form-group">
                    <label>Year: </label>
                    <input type="number" name="year" id="" class="form-control">
                </div>
            </div>

            <div>
                <input type="submit" name="submit" value="ADD!" class="btn btn-lg col-md-offset-3 col-md-6 m-auto d-block">
            </div>
            <input type="hidden" name="_token" value="{{csrf_token()}}">
            </div>

    </div>
    </div><!--end demo-->


    @endsection

表users表和publications表都是通过foregion key user_id连接的,但是我无法获取当前登录用户数据的数据。它提供了存储在出版物选项卡中的所有数据。

您可以获取登录用户的数据

首先将其包含在控制器的类声明中

use Auth;
然后更改功能
show
,如下所示

public function show()
{
    //
    $user_id = Auth::user()->id;
    $data['data'] = DB::table('publications')->where('user_id' ,'=', $user_id)->get();
    if(count ($data)>0){
    return view('publications',compact('data'));
    }
    else
    {
        return view('publications');
    }
}

您可以获取登录用户的数据

首先将其包含在控制器的类声明中

use Auth;
然后更改功能
show
,如下所示

public function show()
{
    //
    $user_id = Auth::user()->id;
    $data['data'] = DB::table('publications')->where('user_id' ,'=', $user_id)->get();
    if(count ($data)>0){
    return view('publications',compact('data'));
    }
    else
    {
        return view('publications');
    }
}

您需要按以下方式更改查询以按用户添加筛选器:

$userId = Auth::user()->id;
$data['data'] = DB::table('publications')->where('user_id', $userId)->get();

您正在使用两个类似的路由,只需删除发送到索引方法的路由。

您需要按以下方式更改查询,以按用户添加筛选器:

$userId = Auth::user()->id;
$data['data'] = DB::table('publications')->where('user_id', $userId)->get();

您正在使用两个类似的路由,只需删除发送到索引方法的路由。

这可以帮助您,它可以正常工作

   public function show()
     {
    $id = Auth::user()->id;
    //
    $data['data'] = DB::table('publications')->where('user_id','=', $id)->first();
    if(count ($data)>0){
    return view('publications',compact('data'))
    }
    else
    {
        return view('publications');
    }
}

这可以帮助你,它的工作

   public function show()
     {
    $id = Auth::user()->id;
    //
    $data['data'] = DB::table('publications')->where('user_id','=', $id)->first();
    if(count ($data)>0){
    return view('publications',compact('data'))
    }
    else
    {
        return view('publications');
    }
}

对于同一路线
出版物
yes,您有两个操作,一个用于存储数据,另一个用于获取数据no
index
show
url是相同的。更改为
show
或更改为
index
对于同一路线
publications
yes有两个操作一个用于存储数据,一个用于获取数据no
index
show
url相同。更改
show
或更改
index
仍获取所有注册用户出版物的数据更改行
返回视图('publications',$data)
返回视图('publications',compact('data')请参见我编辑的answer@IrfanKhan欢迎你可以接受我的答案,并将其设置为解决方案。谢谢。仍在获取所有注册用户出版物的数据更改您的行
返回视图('publications',$data)
返回视图('publications',compact('data')请参见我编辑的answer@IrfanKhan欢迎你可以接受我的答案,并将其设置为解决方案。谢谢