Php 在查询结果的while循环中,如何在特定条件下用rowspan回显行表?
我有这样的报告 我想做一个如上图所示的报告。 我已经用以下代码进行了尝试:Php 在查询结果的while循环中,如何在特定条件下用rowspan回显行表?,php,mysql,sql,loops,Php,Mysql,Sql,Loops,我有这样的报告 我想做一个如上图所示的报告。 我已经用以下代码进行了尝试: $id = 0; $id2 = 0; $no = 1; $q3 = mysql_query("SELECT * FROM pendidikan, unsur, subunsur WHERE pendidikan.id_sub = subunsur.id_sub AND subunsur.id_unsur = unsur.id_unsur AND pendidikan.nidn = $_GET[n
$id = 0;
$id2 = 0;
$no = 1;
$q3 = mysql_query("SELECT * FROM pendidikan, unsur, subunsur WHERE pendidikan.id_sub = subunsur.id_sub AND subunsur.id_unsur = unsur.id_unsur AND pendidikan.nidn = $_GET[nidn]");
$q4 = mysql_query("SELECT * FROM pendidikan, unsur, subunsur WHERE pendidikan.id_sub = subunsur.id_sub AND subunsur.id_unsur = unsur.id_unsur AND pendidikan.nidn = $_GET[nidn]");
$data = array();
while($d=mysql_fetch_assoc($q3)){
$no++;
if($id != $d['id_unsur']){
$no = $no+1;
echo"<tr>
<td>$d[kode_unsur]</td>
<td colspan='8'>$d[nama_unsur]</td>
</tr>";
while($f=mysql_fetch_array($q3)){
if($id2 != $f['id_sub']){
echo"<tr>
<td rowspan='$no'>$d[kode_sub]</td>
<td colspan='8'>$d[nama_sub]</td>
</tr>";
}
$id2 = $f['id_sub'];
while($g=mysql_fetch_assoc($q4)){
if($g['id_sub'] == $f['id_sub']){
echo"<tr>
<td>$g[no_butir]</td>
<td>$g[uraian]</td>
<td>$g[thn_smt_akademik]</td>
<td>$g[tanggal]</td>
<td>$g[satuan_hasil]</td>
<td>$g[jml_vlm_kegiatan]</td>
<td>$g[jml_angka_kredit]</td>
<td>$g[bukti]</td>
</td>";
}
}
}
}
$id = $d['id_unsur'];
}
$id=0;
$id2=0;
$no=1;
$q3=mysql_查询(“从pendidikan、unser、subunser中选择*,其中pendidikan.id_sub=subunser.id_sub和subunser.id_unser=unser.id_unser和pendidikan.nidn=$_GET[nidn]”;
$q4=mysql_查询(“从pendidikan、unser、subunser中选择*,其中pendidikan.id_sub=subunser.id_sub和subunser.id_unser=unser.id_unser和pendidikan.nidn=$_GET[nidn]”;
$data=array();
而($d=mysql\u fetch\u assoc($q3)){
$no++;
如果($id!=$d['id\u unser'])){
$no=$no+1;
回声“
$d[科德乌努索]
$d[不知道]
";
而($f=mysql\u fetch\u数组($q3)){
如果($id2!=$f['id\u sub'])){
回声“
$d[kode_sub]
$d[纳马苏维埃]
";
}
$id2=$f['id_sub'];
而($g=mysql\u fetch\u assoc($q4)){
如果($g['id\u sub']=$f['id\u sub'])){
回声“
$g[不可抗力]
$g[乌拉语]
$g[thn_smt_akademik]
$g[tanggal]
$g[satuan_hasil]
$g[jml_vlm_kegiatan]
$g[jml_angka_kredit]
$g[bukti]
";
}
}
}
}
$id=$d['id_unser'];
}
我应该怎么做,因为有了这段代码,我用相同的子A创建了行,而不是像这样的子B:
任何帮助都将不胜感激。谢谢。您可以接受SQL注入,并使用已弃用/删除的驱动程序。还有,为什么你要执行同一个查询三次并定义两次?@user3783243因为我太困惑了,我不知道怎么做,你知道怎么做吗?你需要停止使用过时的
mysql.*
函数,它们已经被弃用多年,在当前版本的PHP中被删除。转换为PDO或mysqli。