Postingan lainnya
Undefined variable $data pada @foreach laravel
Saya ingin menampilkan data dari tabel 'mahasiswa' tapi ada pesan error Undefined variable $data. Ini kodingan saya di daftar_mahasiswa.blade.php
@foreach ($data as $d)
<tbody>
<tr>
<td>{{ $d['no'] }}</td>
<td>{{ $d['nim'] }}</td>
<td>{{ $d['nama'] }}</td>
<td>{{ $d['prodi'] }}</td>
<td>{{ $d['j_kel'] }}</td>
</tr>
</tbody>
@endforeach
ini controllernya
class MahasiswaController extends Controller
{
public function daftar_mahasiswa()
{
$data = mahasiswa::all();
// return $data;
return view('daftar_mahasiswa')->with('data', $data);
}
}
ini model
class Mahasiswa extends Model
{
use HasFactory;
protected $table = 'mahasiswa';
}
3 Jawaban:
Jawaban Terpilih
<div>Nama model di controller sepertinya salah, harusnya Mahasiswa
tetapi kamu menulisnya mahasiswa
<br><br>pastikan di route-nya itu memanggil fungsi daftar_mahasiswa
juga bukan yang lain<br><br>oh iya, kalo boleh ngasih saran, di laravel bisa pakai fungsi compact()
, coba pakai itu biar lebih simple, dan di view klo misal mau nampilin no tinggal $d-&gt;no
<br><br>semoga membantu</div>
<div>Pesan kesalahan "Undefined variable $data" terjadi karena Anda mencoba menggunakan variabel $data
di view, tetapi belum didefinisikan terlebih dahulu. Anda dapat memperbaiki hal ini dengan mendefinisikan variabel tersebut di controller sebelum mengembalikan view. Dalam kasus Anda, Anda dapat melakukannya dengan menambahkan baris berikut ke dalam metode daftar_mahasiswa()
:<br><br><br></div><pre>$data = Mahasiswa::all();</pre><div><br><br>Setelah Anda mendefinisikan variabel tersebut, Anda dapat menggunakannya di view tanpa masalah apa pun. Berikut adalah kode yang diperbarui untuk view Anda:<br><br><br></div><pre>@foreach ($data as $d)
<tbody>
<tr>
<td>{{ $d['no'] }}</td>
<td>{{ $d['nim'] }}</td>
<td>{{ $d['nama'] }}</td>
<td>{{ $d['prodi'] }}</td>
<td>{{ $d['j_kel'] }}</td>
</tr>
</tbody>
@endforeach</pre><div><br><br>Berikut adalah kode yang diperbarui untuk controller Anda:<br><br><br></div><pre>class MahasiswaController extends Controller
{
public function daftar_mahasiswa()
{
$data = Mahasiswa::all();
return view('daftar_mahasiswa')->with('data', $data);
}
}</pre><div><br><br>Setelah Anda membuat perubahan ini, view Anda seharusnya dapat menampilkan data dari tabel mahasiswa
tanpa ada kesalahan lagi.</div>
<div>Yes. I got it. Thanks for your post.<br><br>____________________________________________________________________________________<br><br><a href="https://trapthecat3.com">trap the cat</a></div>