|          
近日写一段程序,要求从数据库表中读出纪录,每个纪录对应硬盘上的文件,这些文件全部是gif和swf文件,要求将这些gif和swf文件已4*4没页16个的形式显示在浏览器上,就像ACDSee那样。由于数据库中的纪录是混乱的,gif和swf的排列顺序没有规则。对于gif文件,很好说,直接用<img src=<%=path%>>就可以显示出来,可是对于swf文件,就很麻烦,因为swf文件要在页面上显示的话,就要用到<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="/download/swflash.cab#version=5,0,0,0" width="480" height="400">
 <param name=movie value=http://cfan.net.cn/info/"images/man.swf">
 <param name=quality value=high>
 <embed src=http://cfan.net.cn/info/"images/man.swf" quality=high pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="480" height="400">
 </embed>
 
 这么长的代码非常讨厌,因此,我想到了一个很方便的方法:就是用iframe:
 <iframe src=<%=Url%> scroll=auto marginwidth=0 marginheight=0 height=80% width=80% frameborder=0></iframe>
 
 程序代码如下:
 
 <%
 String sqlStr;
 String imgUrl;
 String extendName;
 ResultSet rs=null;
 pageBean.setPageSize(PAGESIZE);
 pageBean.setCurrentPage(request);
 
 dbBean.connectIntranetDatabase();
 pageBean.setDB(dbBean);
 sqlStr="select * from datamanager.res_animation_a where publish=1 order by id desc";
 rs=pageBean.page(sqlStr);
 
 int count=0;
 %>
 
 <table border=1 cellpadding=0cellspacing=0 bordercolorlight='#666666' width=95% align=center class='font-default' bordercolordark='#FFFFFF' >
 
 <%
 if(rs!=null){
 do
 {
 //显示字段内容
 out.println("<tr>");
 imgUrl=rs.getString("path");
 extendName=rs.getString("filetype");
 out.print("<td width=25% align=center valign=middle >");
 if (extendName.trim().equals("gif")){
 out.print("<a href=");
 out.print(imgUrl);
 out.print(">");
 out.print("<img width='100' border=0 src=" + imgUrl + ">");
 out.print("</a>");
 }else{
 out.print("<iframe src=");
 out.print(imgUrl);
 out.print(" scroll=auto marginwidth=0 marginheight=0 height=80% width=80% frameborder=0>");
 out.print("</iframe>");
 }
 out.print("<br>");
 out.print("<input type='checkbox' value='-1' name='");
 out.print(rs.getString("id"));
 out.print("'>");
 out.print(rs.getString("name"));
 out.print(".");
 out.print(rs.getString("filetype"));
 out.println("</td>");
 count++;
 
 out.print("<td width=25% align=center valign=middle >");
 if (rs.next()){
 imgUrl=rs.getString("path");
 extendName=rs.getString("filetype");
 if (extendName.trim().equals("gif")){
 out.print("<a href=");
 out.print(imgUrl);
 out.print(">");
 out.print("<img width='100' border=0 src=" + imgUrl + ">");
 out.print("</a>");
 }else{
 out.print("<iframe src=");
 out.print(imgUrl);
 out.print(" scroll=auto marginwidth=0 marginheight=0 height=80% width=80% frameborder=0>");
 out.print("</iframe>");
 }
 out.print("<br>");
 out.print("<input type='checkbox' value='-1' name='");
 out.print(rs.getString("id"));
 out.print("'>");
 out.print(rs.getString("name"));
 out.print(".");
 out.print(rs.getString("filetype"));
 count++;
 }
 else{
 out.print(" ");
 }
 out.println("</td>");
 
 out.print("<td width=25% align=center valign=middle >");
 if (rs.next()){
 imgUrl=rs.getString("path");
 extendName=rs.getString("filetype");
 if (extendName.trim().equals("gif")){
 out.print("<a href=");
 out.print(imgUrl);
 out.print(">");
 out.print("<img width='100' border=0 src=" + imgUrl + ">");
 out.print("</a>");
 }else{
 out.print("<iframe src=");
 out.print(imgUrl);
 out.print(" scroll=auto marginwidth=0 marginheight=0 height=80% width=80% frameborder=0>");
 out.print("</iframe>");
 }
 out.print("<br>");
 out.print("<input type='checkbox' value='-1' name='");
 out.print(rs.getString("id"));
 out.print("'>");
 out.print(rs.getString("name"));
 out.print(".");
 out.print(rs.getString("filetype"));
 count++;
 }
 else{
 out.print(" ");
 }
 out.println("</td>");
 
 out.print("<td width=25% align=center valign=middle >");
 if (rs.next()){
 imgUrl=rs.getString("path");
 extendName=rs.getString("filetype");
 out.print("<a href=");
 out.print(imgUrl);
 out.print(">");
 out.print("<img width='100' border=0 src=" + imgUrl + ">");
 out.print("</a>");
 
 out.print("<br>");
 out.print("<input type='checkbox' value='-1' name='");
 out.print(rs.getString("id"));
 out.print("'>");
 out.print(rs.getString("name"));
 out.print(".");
 out.print(rs.getString("filetype"));
 count++;
 }
 else{
 out.print(" ");
 }
 out.println("</td>");
 
 
 out.println("</tr>");
 
 }while(rs.next() && count<PAGESIZE);
 }
 %>
 
 |