web-dev-qa-db-fra.com

Comment obtenir des données de base de données pour afficher la page dans laravel?

J'utilise Laravel 5.4 et je souhaite afficher mes données dans la base de données à partir de ma page d'affichage (listpetani.blade.php).

Voici le code de mon projet:

HTML:

<div class="table-responsive">
  <table class="table table-striped table-hover table-condensed">
    <thead>
      <tr>
        <th><strong>No</strong></th>
        <th><strong>Nama Petani</strong></th>
        <th><strong>Alamat</strong></th>
        <th><strong>No. Handphone</strong></th>
        <th><strong>Lokasi</strong></th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <th></th>
        <th></th>
        <th></th>
        <th></th>
        <th></th>
      </tr>
    </tbody>
  </table>
</div>

PHP: Dans mon listpetani.blade.php, j'ai une table vide et je veux afficher les données de database tbl_user :

Route::get('listpetani', function () {

  $petani = DB::table('tbl_user')->pluck('id_user', 'username', 'alamat', 'no_telp', 'id_lokasi');

  return view('listpetani', ['petani' => $petani]);

});

Et le tableau dans ma page: Voir dans le navigateur

Je veux montrer toutes les données de la base de données à mon avis dans laravel 5.4. Quelqu'un peut-il m'aider?

4
Yosua Simanjuntak

[RÉSOUDRE]

Merci les gars, j'ai déjà résolu ce problème

C'est le code résolu

web.php (itinéraires)

Route::get('listpetani', function () {

    $petani = DB::table('tbl_user')->get();

    return view('listpetani', ['petani' => $petani]);
});

et dans mon listpetani.blade.php

@foreach($petani as $key => $data)
    <tr>    
      <th>{{$data->id_user}}</th>
      <th>{{$data->nama_user}}</th>
      <th>{{$data->alamat}}</th>
      <th>{{$data->no_telp}}</th>
      <th>{{$data->id_lokasi}}</th>                 
    </tr>
@endforeach
7
Yosua Simanjuntak
@foreach($petani as $p)
 <tr>
     <td>{{ $p['id_user'] }}</td>
     <td>{{ $p['username'] }}</td>
     <td>{{ $p['alamat'] }}</td>
     <td>{{ $p['no_telp'] }}</td>
     <td>{{ $p['id_lokasi'] }}</td>
 </tr>
@endforeach
2
Nirbhay Kularia

Les autres réponses sont correctes, je veux juste ajouter une dernière chose, si votre champ de base de données contient des balises HTML, le système imprimera des balises HTML telles que "<p>" pour les balises de paragraphe. Pour résoudre ce problème, vous pouvez utiliser la solution ci-dessous:

Vous devrez peut-être appliquer html_entity_decode à vos données.

Cela fonctionne très bien pour Laravel 4

{{html_entity_decode ($ post-> body)}}

Pour Laravel 5, vous devrez peut-être utiliser ceci à la place

{!! html_entity_decode ($ post-> body) !!}

0
Kamlesh

** En contrôleur latéral, vous passez ceci **:

$petanidetail = DB::table('tb1_user')->get()->toArray();
return view('listpetani', compact('petanidetail'));

et la vue interne utilise la variable petanidetail comme suit :

foreach($petanidetail as $data)
{
echo $data;
}
0
ram pratap singh

Dans votre contrôleur:

 $select = DB::select('select * from student');
 return view ('index')->with('name',$select);

A votre avis:

@foreach($name as $data){
<tr>
    <th>{{ $data -> id}}</th> <br>
    <th>{{ $data -> name}}</th> <br>
    <th>{{ $data -> age}}</th> <br>
    <th>{{ $data -> address}}</th>
</tr>
}
@endforeach

J'espère que cela pourra vous aider.

0
Phantih

Vous pouvez également obtenir des données de la base de données 

@php( $contacts = \App\Contact::all() )  
@php( $owners = \App\User::all())  

<select class="form-control" name="owner_name" id="owner_name">                           
    @foreach($contacts as $contact)
      <option value="{{ $contact->contact_owner_id }}">{{ $contact->contact_owner }}</option>
    @endforeach                            
</select>  
0
Hemant Kumar

Essaye ça:

$petani = DB::table('tbl_user')->pluck('id_user', 'username', 'alamat', 'no_telp', 'id_lokasi');
return view('listpetani', ['petani' => $petani]);

à votre avis, parcourez $petani en utilisant foreach() comme:

foreach($petani as $data)
{
    echo $data->id_user;  // $petani is a Std Class Object here
    echo $data->username;
}
0
Mayank Pandeyz