编程论坛's Archiver

xiongjl9555 发表于 2008-5-31 15:44

急需求解

统计项目        张三        李四        王五        赵六        关七
工作量        a(1,0)        a(1,1)        a(1,2)        a(1,3)        a(1,4)
有效效率        a(2,0)        a(2,1)        a(2,2)        a(2,3)        a(2,4)
使用率        a(3,0)        a(3,1)        a(3,2)        a(3,3)        a(3,4)
利用asp相关技术、access及数组知识如何上述表格的输出?
[attach]35098[/attach]

multiple1902 发表于 2008-5-31 16:59

先做好表格(手写或者用网页设计工具)
在对应单元格内插入<%=a(1,0)%>或类似代码。

xiongjl9555 发表于 2008-5-31 17:21

回复 2# multiple1902 的帖子

我的意思是在网页上实现上述效果,如果用比较笨的办法,实现的效果如图片2,现在我想通过使用数组将程序变得简单,但通过“for i=0 to 5   next”语句,实现的效果如图片1,现在我想实现效果如图片2,不知如何写?谢谢
[attach]35106[/attach](效果1)[attach]35107[/attach](效果2)

[[it] 本帖最后由 xiongjl9555 于 2008-5-31 17:24 编辑 [/it]]

[[it] 本帖最后由 xiongjl9555 于 2008-5-31 17:32 编辑 [/it]]

hmhz 发表于 2008-5-31 17:53

<%for i=0 to 2%>
<tr>
<%for j=0 to 3%>
<td><%=a(i,j)%></td>
<%next%>
</tr>
<%next%>

xiongjl9555 发表于 2008-5-31 18:39

非常感谢

首先非常感谢你的帮助,可能我没有表述清楚,现在我将我的数据库图片附上,再将我的一段程序写下来,可能会清楚一些,按照我的这段程序,出来的效果就是图片1的样式。
程序如下:
<%              
  set rs=server.createobject("adodb.recordset")
  sql="select * from  member where BigClassName=""南头所"" order by MemberID asc "
  rs.open sql,conn,1,1
  num = rs.recordcount
  dim a(5)
  i=0
  do while not rs.eof
   i=i+1
   a(i)=rs("MemberName")
for i=0 to ubound(num)   
        sql11=sql1+" and 现场勘验人 like '"&a(i)&"%'"
        sql111=sql11+" and 手印数量 <>'0'"
  rs1.Open sql11,conn,1,1         
total = rs1.recordcount
  rs1.close  
  rs1.Open sql111,conn,1,1
  finger = rs1.recordcount
  rs1.close

        sql112=sql11+" and 足迹数量 <>'0'"       
        rs1.Open sql112,conn,1,1
  foot= rs1.recordcount
  rs1.close     
          
sql113=sql11+" and 检材数量 <>'0'"       
        rs1.Open sql113,conn,1,1
  bologiy= rs1.recordcount
  rs1.close      
%>
   <tr>        
     <td align="center"><%=a(i)%></td>
     <td align="center"><%=total%></td>                                                               
     <td align="center"><%=left(finger/ total,5)*100%>%</td>                                             
     <td align="center"><%=left(foot/ total,5)*100%>%</td>                        
     <td align="center"><%=left(bologiy/ total,5)*100%>%</td>
   </tr>
<%
next
rs.movenext
loop      
rs.close
%>

数据库member表单如下:
[attach]35109[/attach]

[[it] 本帖最后由 xiongjl9555 于 2008-5-31 18:42 编辑 [/it]]

[[it] 本帖最后由 xiongjl9555 于 2008-5-31 18:44 编辑 [/it]]

multiple1902 发表于 2008-5-31 18:55

纯粹HTML编排问题,但是效果2不科学……不合理

xiongjl9555 发表于 2008-5-31 19:06

为什么?

效果2比较符合平常的习惯,因为每个单位的人数几乎是固定的,不超过6人,而统计的项目是可以增加的,所以我觉得效果2较好,谢谢

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.