我试图从两个不同的表中获取数据并将其显示在一页上,我的意思是在一个视图上显示。但是只有一个功能在同一时间工作,而另一功能则不在,反之亦然。这两个功能是分开工作的,而不是结合在一起工作的。请帮忙。我的代码是给。 PdfContoller.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use DB;
use PDF;
use Auth;
class PdfController extends Controller
{
public function personalpdf()
{
if(\Auth::check()){
$user = \Auth::user();
return view('pdf/personalpdf',compact('user'));
}
else
{
return view('pdf/personalpdf');
}
}
public function personalphd()
{
$user_id = Auth::user()->id;
$result['result'] = DB::table('education')->where('user_id' ,'=', $user_id)->get();
if(count ($result)>0){
return view('pdf/personalpdf',$result);
}
else
{
return view('pdf/personalpdf');
}
}
}
我的控制器包含以上两个函数,用于从两个不同的表中获取数据。 我的查看文件是personalpdf.blade.php。
@extends('layouts.app')
@section('content')
<div class="container"><br>
<h1 class="text-success text-center">Profile</h1><br>
<table class="table table-bordered">
@if(isset($user))
<tr>
<th>Name</th>
<td>{{ $user ->tname}}</td>
</tr>
<tr>
<th>Father Name</th>
<td>{{ $user ->fname}}</td>
</tr>
<tr>
<th>Contact Number</th>
<td>{{ $user ->phone}}</td>
</tr>
<tr>
<th>Email</th>
<td>{{ $user ->email}}</td>
</tr>
<tr>
<th>Official Email</th>
<td>{{ $user ->off_email}}</td>
</tr>
@endif
</table>
<div class="text text-success text-center">
PHD Research
</div>
<table class="table">
<tr>
<th>
PHD Research Area
</th>
<th>University</th>
<th>Country</th>
</tr>
@foreach($result as $value)
<tr>
<td>{{$value->research_area}}</td>
<td>{{$value->univ}}</td>
<td>{{$value->country}}</td>
</tr>
@endforeach
</table>
@endsection
我的路线在这里给出。
Route::get('pdf/personalpdf','PdfController@personalpdf');
Route::get('pdf/personalpdf','PdfController@personalphd');
Route::get('/personal','PdfController@personal');
实际上,我想制作一个查看文件,可以在其中查看当前登录用户的所有个人详细信息。在其下方,我想显示他从教育表获得的PHD研究细节。但是我在同一时间只得到一个结果。我的意思是,如果我得到了登录用户的个人详细信息,那么phd详细信息将不会显示;如果我得到phd详细信息,它将为我提供所有的phd详细信息,而不是当前登录用户的详细信息。 请帮忙。
答案 0 :(得分:1)
class PdfController extends Controller
{
public function personalpdf()
{
if(\Auth::check()){
$user = \Auth::user();
$user_id = $user->id;
$result = DB::table('education')->where('user_id' ,'=', $user_id)->get();
return view('pdf/personalpdf',compact('user', 'result'));
}else {
return view('pdf/personalpdf');
}
}
}
路由文件
Route::get('pdf/personalpdf','PdfController@personalpdf');
Route::get('/personal','PdfController@personal');
尝试一下。您必须将用户和结果从同一控制器操作传递到视图。我认为您缺乏Laravel的一些基础知识。在继续之前,请仔细阅读文档。