Problem is I don't want to query inside blade cause it's a bad idea, I have 2 tables:
"kriterias" table (id_kriteria, kriteria_name)
"evaluasis" table (id_food, id_kriteria, grade)
and have model for it:
Kriteria Model
public function evaluasi()
{
return $this->hasMany(Evaluasi::class, id_kriteria, id_kriteria);
}
Evaluasi Model
public function kriteria()
{
return $this->belongsTo(Kriteria::class, id_kriteria, id_kriteria);
}
Controller part (don't wory about "nis" value, cause I get it from request it's integer) :
$jlhkriteria = Kriteria::count();
return view('rank', compact('nis', 'jlhkriteria));
This is where my problems begin, I want this code to be applied in my blade view:
@for ($i=1;$i<=$jlhkriteria;$i++)
<?php $evaluasi = mysqli_query($mysqli, "SELECT k.kriteria_name,e.id_kriteria,e.grade FROM evaluasis e, kriterias k WHERE
e.id_food='$nis' AND e.id_kriteria='$i' AND e.id_kriteria=k.id_kriteria");
$hasil = mysqli_fetch_array($evaluasi, MYSQLI_ASSOC); ?>
<?php echo $hasil['kriteria_name']; ?>
<?php echo $hasil['grade']; ?>
@endfor
As far as I know to join select query above using eloquent I use this :
$evaluasi = Kriteria::with(array('evaluasi' => function($query) use ($nis) {
$query ->where('id_food', $nis)
->where('id_kriteria',$i)//this $i value are get from for loop in blade
->select('id_kriteria', 'grade');
}))->get();
I always have problem when query something inside for loop in blade. How to query it in controller while taking $i value in blade and echo "kriteria_name" and "grade"?
via Chebli Mohamed
Aucun commentaire:
Enregistrer un commentaire