Postingan lainnya
Data yang muncul hanya sebagian..
saya punya tabel user, tabel kriteria dan tabel det_kriteria. saya ingin menampilkan hasil relasi dari ketika tabel tersebut, dimana harusnya yg tampil adalah semua nama user, nama kriteria dan value dari tabel det_kriteria. tapi ternyata yg muncul hanya beberapa user saja. untuk yg kriteria dan valuenya sudah benar.
include("koneksi.php");
//Menghitung jumlah mapel
$query = mysql_query("SELECT COUNT(*) FROM kriteria ORDER BY id_kt");
$data = mysql_fetch_assoc($query);
$jum_kt=$data['COUNT(*)'];
//Mendeteksi nama-nama mata pelajaran $indeks_kt=0;
$query = mysql_query("SELECT * FROM kriteria ORDER BY id_kt");
while($data=mysql_fetch_assoc($query))
{
$id_kt[$indeks_kt]=$data['id_kt'];
$nama_kt[$indeks_kt]=$data['nama_kriteria'];
$indeks_kt++;
}
//Menghitung jumlah siswa
$query = mysql_query("SELECT COUNT(*) FROM tb_user where status='mahasiswa' ORDER BY id_user ");
$data = mysql_fetch_assoc($query);
$jum_mhs=$data['COUNT(*)'];
//Mendeteksi nama-nama siswa dan nilai-nilainya
$query = mysql_query("SELECT * FROM tb_user ORDER BY id_user");
$indeks_mhs=0;
while($data = mysql_fetch_assoc($query))
{
$no[$indeks_mhs]=$indeks_mhs+1;
$id_user[$indeks_mhs]=$data['id_user'];
$nama_lengkap[$indeks_mhs]=$data['nama_lengkap'];
for($i=0;$i<$jum_kt;$i++)
{
$query1=mysql_query("SELECT value FROM det_kriteria WHERE id_user='$id_user[$indeks_mhs]' AND id_kt='$id_kt[$i]'");
$data1 = mysql_fetch_assoc($query1);
$nilai[$indeks_mhs][$i]=$data1['value'];
}
$indeks_mhs++;
}
?>
<tr class="info">
<th class="center">No</th>
<th class="center">Nama Mahasiswa</th>
<?php for($i=0;$i<$jum_kt;$i++) { ?>
<th class="center"><?php echo $nama_kt[$i]?></th>
<?php } ?>
</tr>
</thead>
<tbody>
<?php for($i=0;$i<$jum_kt;$i++){ ?>
<tr>
<?php $no=$i+1; ?>
<td class="center"><?php echo $no.'.';?></td>
<td><?php echo $nama_lengkap[$i];?></td>
<?php for($j=0;$j<$jum_kt;$j++) { ?>
<td><?php echo $nilai[$i][$j];?></td>
<?php } ?>
</tr>
<?php } ?>
</tbody>
munculnya cuma ini gan..untuk nilai dan nama kriterianya itu memang cuma segitu saya ngisinya di database sementara ini. yg jadi permasalahan kenapa nama user yg tampil cuma segini ya? gk tampil semua..
padahal di database data usernya ada banyak..
mohon bantuannya ya gan,, terima kasih,,
2 Jawaban:
Jawaban Terpilih
Menurut analisa saya, dari kode abang bagian ngeluarin data mahasiswa yang ini
<tbody>
<?php for($i=0;$i<$jum_kt;$i++){ ?>
<tr>
<?php $no=$i+1; ?>
<td class="center"><?php echo $no.'.';?></td>
<td><?php echo $nama_lengkap[$i];?></td>
<?php for($j=0;$j<$jum_kt;$j++) { ?>
<td><?php echo $nilai[$i][$j];?></td>
<?php } ?>
</tr>
<?php } ?>
</tbody>
Seharusnya perulangan paling luar seperti ini
<?php for($i=0;$i<$jum_mhs;$i++){ ?>
karena banyaknya siswa disimpan pada var $jum_mhs bukan $jum_kt
terima kasih banyak gan,, Alhamdulillah udah mau :D