返回列表 回复 发帖

List.php

  1. <?php
  2. function getbaseurl(&#36;url)
  3. {
  4.     return substr(&#36;url, 0, strrpos(&#36;url,';/';) );
  5. }
  6. function ListDir(&#36;url_base, &#36;dir)
  7. {
  8. chdir(&#36;dir);
  9.    
  10. &#36;handle=opendir(';.';);
  11.     echo " <table>";
  12.     echo "<tr bgcolor=&#35;a0d000>
  13.     <td width=40></td>
  14.     <td width=400>File or folder</td>
  15.     <td width=30 align=center>OP</td>
  16.     <td width=100 align=right>Size</td>
  17.     <td width=200 align=center>Last Modify Time</td>
  18.     </tr>";
  19.     &#36;dir_count=0;
  20.     &#36;file_count=0;
  21. while ((&#36;file=readdir(&#36;handle))<>"")
  22. {
  23.         echo "<tr onMouseOver ="this.style.backgroundColor=';&#35;FFFF80';" onMouseOut ="this.style.backgroundColor=';&#35;EEEEEE';">";
  24.         &#36;file_size = sprintf( "%10.1f KB",filesize(&#36;file)/1000 );
  25.         &#36;filemod = filemtime(&#36;file);
  26.         &#36;file_date = @date("Y-m-d H:i:s", &#36;filemod);
  27.         &#36;encoded_file = rawurlencode(&#36;file);
  28.         
  29.         &#36;file_url = "&#36;url_base/&#36;dir/&#36;file";
  30. if ( is_file(&#36;file) )
  31.     {
  32.             echo "
  33.             <td></td>
  34.             <td><a href="&#36;PHP_SELF?action=download&file=&#36;encoded_file&dirname=&#36;dir" title="download this file?"><font color=&#35;FF00FF>&#36;file</font></a></td>
  35.             <td><a href=&#36;PHP_SELF?action=delete&dirname=&#36;dir&file=&#36;encoded_file>del</a> <a href=&#36;file_url target=_blank>open</a></td>
  36.             <td align=right>&#36;file_size</td>
  37.             <td align=center>&#36;file_date</td>";
  38.             &#36;file_count++;
  39.         }
  40. else
  41. {
  42.             echo "
  43.             <td><IMG SRC=';/icons/folder.gif'; ALT=';[DIR]'; border=0></td>
  44.             <td><a href="&#36;PHP_SELF?dirname=&#36;dir/&#36;encoded_file" title="enter into this folder?">&#36;file</a></td>
  45.             <td></td>
  46.             <td align=right>&#36;file_size</td>
  47.             <td align=center>&#36;file_date</td>";
  48.             if ( (&#36;file!=".")&&(&#36;file!="..") ) &#36;dir_count++;
  49.         }
  50.         echo "</tr>";
  51. }
  52.     echo "</table>";
  53. closedir(&#36;handle);
  54.     echo "<P>Total &#36;dir_count folders, &#36;file_count files";
  55. }
  56. function download(&#36;file_dir, &#36;file_name)
  57. {
  58.     &#36;file = fopen(&#36;file_dir . &#36;file_name,"r"); // 打开文件
  59.     Header("Content-type: application/octet-stream");
  60.     Header("Accept-Ranges: bytes");
  61.     Header("Accept-Length: ".filesize(&#36;file_dir . &#36;file_name));
  62.     Header("Content-Disposition: attachment; filename=" . &#36;file_name);
  63.     echo fread(&#36;file,filesize(&#36;file_dir . &#36;file_name));
  64.     fclose(&#36;file);
  65. }
  66. function mynewdir(&#36;cur_dir, &#36;new_dir_name)
  67. {
  68.     &#36;new_dir = &#36;cur_dir."/".&#36;new_dir_name;
  69.     if ( @mkdir(&#36;new_dir,0777) )
  70.     {
  71.         echo "<script>alert("创建文件夹 &#36;new_dir 成功!");</script>";
  72.     }
  73.     else
  74.     {
  75.         echo "<script>alert("出错!创建文件夹 &#36;new_dir 不成功!");</script>";
  76.     }
  77. }
  78. function uploadfile(&#36;post_fname, &#36;remote_fname)
  79. {
  80.     if (&#36;post_fname=="none")
  81.     {
  82.         die("No file selected!");   
  83.     }
  84.     if ( copy(&#36;post_fname, &#36;remote_fname) )
  85.     {
  86.         echo "<script>alert("上传文件 &#36;remote_fname 成功!");</script>";
  87.     }
  88.     else
  89.     {
  90.         echo "<script>alert("出错!上传文件 &#36;remote_fname 不成功!");</script>";
  91.     }
  92. }
  93. function mydelfile(&#36;file)
  94. {
  95.     if ( is_dir(&#36;file) )
  96.     {
  97.         if ( !rmdir(&#36;file) ) rmfolder(&#36;file);
  98.             echo "<script>alert("操作结束!");</script>";
  99.     }
  100.     else
  101.     {
  102.         if ( unlink(&#36;file) )
  103.             echo "<script>alert("删除文件 &#36;file 成功!");</script>";
  104.         else
  105.             echo "<script>alert("出错!删除文件 &#36;file 不成功!");</script>";
  106.             
  107.     }            
  108. }
  109. if (!IsSet(&#36;dirname))
  110.     echo "<form action=&#36;PHP_SELF? method=post>输入目录:<input name=dirname value=.><input type=submit></form>";
  111. else
  112. {   
  113.     if (&#36;action=="download")
  114.     {
  115.         download(&#36;dirname."/" , &#36;file);
  116.         die("");
  117.     }
  118.     if (&#36;action=="newdir")
  119.     {
  120.         mynewdir(&#36;dirname,&#36;new_dir_name);
  121.         echo "<meta http-equiv=refresh content=';0;url=&#36;PHP_SELF?dirname=&#36;dirname';>";
  122.         die("");
  123.     }
  124.     if (&#36;action=="upload")
  125.     {
  126.         
  127.         uploadfile(&#36;uploaded_fname, &#36;dirname."/".&#36;uploaded_fname_name);
  128.         echo "<meta http-equiv=refresh content=';0;url=&#36;PHP_SELF?dirname=&#36;dirname';>";
  129.         die("");
  130.     }
  131.     if (&#36;action=="delete")
  132.     {
  133.         mydelfile(&#36;dirname."/".&#36;file);
  134.         echo "<meta http-equiv=refresh content=';1;url=&#36;PHP_SELF?dirname=&#36;dirname';>";
  135.         die("");
  136.     }
  137.     echo "
  138.     <style type=text/css>
  139.     body {font-family:verdana; font-size:12px; background-color:&#35;eeeeee}
  140.     td,input {font-family:verdana; font-size:12px; }
  141.     </style>";
  142.     &#36;url_base = "http://" . &#36;HTTP_HOST . &#36;REQUEST_URI;
  143.     &#36;url_base = substr(&#36;url_base, 0, strpos(&#36;url_base,';?';) );
  144.     &#36;url_base = substr(&#36;url_base, 0, strrpos(&#36;url_base,';/';) );
  145.     ListDir(&#36;url_base, &#36;dirname);
  146.     echo "<p>Current dir: &#36;dirname<P>";
  147.     echo "<table width=100% bgcolor=&#35;a0d000><tr><td height=10></td></table>
  148.     <form action=&#36;PHP_SELF?action=newdir&dirname=&#36;dirname method=post>
  149.     在当前目录下创建<font color=red>新文件夹名</font>: <input name=new_dir_name> <input type=submit value=创建>
  150.     </form>";
  151.     echo "<P>";
  152.     echo "<form action=&#36;PHP_SELF?action=upload&dirname=&#36;dirname method=post enctype="multipart/form-data">
  153.     上传文件: <input type=file name=uploaded_fname> <input type=submit value=上传></form>";
  154. }
  155. ?>
复制代码
哈哈哈!!!!你的IP是不是?我都知道了!!!
返回列表