如何实现显示类似数据库中取出的记录分页一样将某个文件夹的文件列表分页功能

解决方案 »

  1.   

    <?
    include_once("common.php");
    ?>
    <LINK href="style.css" type=text/css rel=stylesheet>
    <table cellSpacing="1" cellPadding="0" width="100%" align="center" bgColor="#799ae1" border="0" id="table1" height="106">
    <tr>
    <td align="middle" bgColor="#799ae1" height="20">
    <table cellSpacing="0" cellPadding="0" width="99%" border="0" id="table2">
    <tr>
    <td align="middle">
    <font style="FONT-SIZE: 14px" color="#ffffff">已上传图片列表</font></td>
    </tr>
    </table>
    </td>
    </tr>
    <tr>
    <td bgColor="#ffffff"><br><table cellSpacing="1" borderColorDark="#ffffff" cellPadding="1" width="99%" align="center" bgColor="#d6dff7" borderColorLight="#000000" border="0" id="table3">
           <tr bgColor="#ffffff">
    <td align="middle" width="43">编号</td>
    <td align="middle">图片</td>
    <td align="middle">文件名</td>
    <td align="middle">大小</td>
    <td align="middle">操作</td>
    </tr>        <?php 
    $i=1; 
    $pic_path="../upload/image/";//图片数据存放位置
    if ($handle = opendir($pic_path)) 
    {   //if start

      while(false !=($file = readdir($handle))) 
      { 
    if ($file != "." && $file != "..")  

                $str[]=   //写入数组 "\n<tr bgColor=#ffffff>\n".
    "<td align=center>".$i++."</td>\n".
    "<td align=center valign=middle>".
    "<a href=".str_replace(' ','%20',$pic_path.$file)." target=_blank>".
    "<img border=0 src=".str_replace(' ','%20',$pic_path.$file)." width=60 height=30>".
    "</a>".
    "</td>\n".
    "<td align=center>".$file."</td>\n".
    "<td align=center>".filesize($pic_path.$file)."字节</td>\n".
    "<td align=center>".
    "<a onclick=\"javascript:if(confirm('删除后不可恢复,确认要删除吗?')) return true;return false;\" href=\"delpic.php?url=".B_encode(str_replace(' ','%20',$pic_path.$file))."\">".
    "<font color=red>删除</font></a></td>\n".
    "</tr>\n";
      }
      }
      closedir($handle);
        }//if end$lines=15;//每页15行
    if(""==$cur_page) $cur_page=1;//当前页  
    $page=ceil(count($str)/$lines);//页数  for($i=($cur_page-1)*$lines ; $i<$cur_page*$lines ; $i++){//分段读出数组
        echo "$str[$i]";  
     }  
     ?>
     
    </table>
    <table width=100%><tr><td align=center>
    <?
    for ($i=1;$i<=$page;$i++){
      $i==$cur_page ? $a="<b>".$i."</b>&nbsp;" : $a="<a href=".$PHP_SELF."?cur_page=$i>".$i."</a>&nbsp;";
      echo "$a";
    }
    ?>
    </td></tr></table>
    </td>
    </tr>
    </table>