上图的红色框中的内容是完全相同的三条记录
属装图号相当于图号的父节点,表中的关联主健为 属装图号和键号两个字段。
从这个图中可以看出,当属装图号=TSK254-11-11-000 键号=2 时候 它的图号为TSK254-11-11-001
当属装图号=TSK254-11-11-001时,它有三条记录,分别为第8/9/10条
当属装图号=TSK254-11-11-000 键号=3 时候 它的图号也为TSK254-11-11-001
当属装图号=TSK254-11-11-001时,它有三条记录,分别为第12/13/14条
其中,8/9/10和12/13/14是对应相同的三条记录,通过程序进行两次查询得到的!
问题一:有无方法通过程序或是别的方法把8/9/10和12/13/14这几条记录显示到一起?实现这样的排列:
8 ……………………
12…………………………9 ………………
13……………………10……………………
14……………………
或是实现的时候类似那种去除这种重复的显示方式的?
问题二:当对“领料单位”进行操作的时候,能否实现单击向下箭头就可以现上下自如?或是只是向下操作,在本程序中只能利用鼠标才能操作!
大家只能通过http://album.hi.csdn.net/views/photo/290520
这个网址看到图片了!
//此函数代码来自PHP手册
{
while($row=mysql_fetch_array($result)) {
$return[] = $row;
}
return $return;
}$arr1=mysql_fetch_all($result1);
$arr2=mysql_fetch_all($result2);
for ($i=0;$i<count($arr1);$i++)
{
for ($j=0;$j<count($arr1[$i]);$j++)
{
echo "$arr1[$i][$j] ";
if($j==count($arr1[$i])-1) echo '<br />';
} for ($j=0;$j<count($arr2[$i]);$j++)
{
echo "$arr1[$i][$j] ";
if($j==count($arr2[$i])-1) echo '<br /><br />';
}
}
数据库表中存储的只是一条记录,而在表单中,却有可能(类似图中http://album.hi.csdn.net/views/photo/290520 的情况),出现若干相同的记录项的
不知道这次说明白了没?
你的问题中不是说“其中,8/9/10和12/13/14是对应相同的三条记录,通过程序进行两次查询得到的!”吗?
所以我说你把这两次查询的结果(每个结果中有三条记录对吧?)分别存入两个二维数组$arr1和$arr2中。
$arr1[0]、$arr1[1]和$arr1[2]是三个一维数组,分别对应三个记录8/9/10,$arr1[0][0]、$arr1[0][1]…$arr1[0][n]、对应记录行8的相应字段。
同理$arr2[0]、$arr2[1]和$arr2[2]是三个一维数组,分别对应三个记录12/13/14
所以有了二维数组,你可以通过$arr1[行标][列标]和$arr2[行标][列标]的方式从结果集中得到你任意你想要的值。不需要再用循环了(我的理解是因为循环取值才使得你得不到你想要的排序结果)。