rtoss - Diff between revs 51 and 52

Subversion Repositories:
Rev:
Show entire file - Ignore whitespace
Rev 51 Rev 52
Line 4... Line 4...
4   http://utu.under.jp/ 4   http://utu.under.jp/
5   PHP¤¢¤×¤í¤À¤ò¸µ¤ËW3C¤Ë½àµò¤·¤¿XHTML¤òÌܻؤ¹¤Ù¤¯ -  
6   ¥¹¥¯¥ê¥×¥ÈµÚ¤ÓHTMLʸ½ñ¤ò²þ¤¤¤¤¿¤·¤Þ¤·¤¿¡£ -  
7   ·ë¹½Å¬Åö¤ÊXHTML¤«¤â¤·¤ì¤Þ¤»¤ó¤¬W3C¿®¼ÔÍͤªµö¤·¤ò¡Ä¡£ -  
8   ------------------ÀßÃÖË¡------------------- -  
9   ÀßÃ֥ǥ£¥ì¥¯¥È¥ê¤Ï755 -  
10   img¡¢imgs¥Ç¥£¥ì¥¯¥È¥ê¤Ï777 -  
11   upload.php¡¢sum.php¤Ï755 -  
12   up.log¡¢last.cgi¡¢count.txt¤Ï666   -  
-   5   PHPあぷろだを元にW3Cに準拠したXHTMLを目指すべく
-   6   スクリプト及びHTML文書を改造いたしました。
-   7   結構適当なXHTMLかもしれませんがW3C信者様お許しを…。
-   8   ------------------設置法-------------------
-   9   設置ディレクトリは755
-   10   img、imgsディレクトリは777
-   11   upload.php、sum.phpは755
-   12   up.log、last.cgi、count.txtは666  
13   ------------------Based-------------------- 13   ------------------Based--------------------
14   source by PHP¤¢¤×¤í¤À v2.2 -  
-   14   source by PHPあぷろだ v2.2
15   http://php.s3.to 15   http://php.s3.to
16   16  
17   source by ¤º¤ë¤Ý¤ó -  
-   17   source by ずるぽん
18   http://zurubon.virtualave.net/ 18   http://zurubon.virtualave.net/
19 19
20   ¤â¤·¤â¤Î°Ù¤Î.htaccess ¡ÊCGI¶Ø»ßSSI¶Ø»ßIndexɽ¼¨¶Ø»ß¡Ë -  
-   20   もしもの為の.htaccess (CGI禁止SSI禁止Index表示禁止)
21   Options -ExecCGI -Includes -Indexes 21   Options -ExecCGI -Includes -Indexes
22   .txt¤Ç¤â¡¢Ãæ¿È¤¬HTML¤À¤Èɽ¼¨¤µ¤ì¤Á¤ã¤¦¤Î¤ÇÃí°Õ -  
-   22   .txtでも、中身がHTMLだと表示されちゃうので注意
23   ------------------------------------------- 23   -------------------------------------------
24  *********************************************/ 24  *********************************************/
25 if(phpversion()>="4.1.0"){//PHP4.1.0°Ê¹ßÂбþ -  
-   25 error_reporting(0);
-   26 if(phpversion()>="4.1.0"){//PHP4.1.0以降対応
26   $_GET = array_map("_clean", $_GET); 27   $_GET = array_map("_clean", $_GET);
27   $_POST = array_map("_clean", $_POST); 28   $_POST = array_map("_clean", $_POST);
28   //$_POST = array_map("_clean", $_GET); 29   //$_POST = array_map("_clean", $_GET);
29   extract($_GET); 30   extract($_GET);
30   extract($_POST); 31   extract($_POST);
31   extract($_COOKIE); 32   extract($_COOKIE);
32   extract($_SERVER); 33   extract($_SERVER);
33   $upfile_type=_clean($_FILES['up']['type']); -  
34   $upfile_size=$_FILES["upfile"]["size"];//Ë¿½ê¤Çµ¤¤Å¤¯¡¦¡¦¡¦ -  
-   34   $upfile_type=_clean($_FILES['upfile']['type']);
-   35   $upfile_size=$_FILES["upfile"]["size"];//某所で気づく・・・
35   $upfile_name=_clean($_FILES["upfile"]["name"]); 36   $upfile_name=_clean($_FILES["upfile"]["name"]);
36   $upfile=$_FILES["upfile"]["tmp_name"]; 37   $upfile=$_FILES["upfile"]["tmp_name"];
37 } 38 }
38 39
39   $title        = 'Wastepaper Uploader';        //¥¿¥¤¥È¥ë -  
40   $home         = 'http://utu.under.jp/';       //¥Û¡¼¥à -  
41   $logfile      = "up.log";     //¥í¥°¥Õ¥¡¥¤¥ë̾¡ÊÊѹ¹¤¹¤ë»ö¡Ë -  
42   $updir        = "./img/";     //¥¢¥Ã¥×Íѥǥ£¥ì¥¯¥È¥ê -  
43   $upsdir       = "./imgs/";    //¥µ¥à¥Í¥¤¥ëÊݸ¥Ç¥£¥ì¥¯¥È¥ê -  
44   $prefix       = '';           //ÀÜƬ¸ì¡Êup001.txt,up002.jpg¤Ê¤éup¡Ë -  
45   $logmax       = 50;           //logÊݸ¹Ô¡Ê¤³¤ì°Ê¾å¤Ï¸Å¤¤¤Î¤«¤éºï½ü¡Ë -  
46   $commax       = 250;          //¥³¥á¥ó¥ÈÅê¹ÆÎÌÀ©¸Â¡Ê¥Ð¥¤¥È¡£Á´³Ñ¤Ï¤³¤ÎȾʬ¡Ë -  
47   $limitk       = 100;  //¥¢¥Ã¥×¥í¡¼¥ÉÀ©¸Â¡ÊKB ¥­¥í¥Ð¥¤¥È¡Ë -  
48   $page_def     = 10;           //°ì¥Ú¡¼¥¸¤Îɽ¼¨¹Ô¿ô -  
49   $admin        = "12345";      //ºï½ü´ÉÍý¥Ñ¥¹ -  
50   $auto_link    = 1;            //¥³¥á¥ó¥È¤Î¼«Æ°¥ê¥ó¥¯¡ÊYes=1;No=0); -  
51   $denylist     = array('192.168.0.1','sex.com','annony');      //¥¢¥¯¥»¥¹µñÈÝ¥Û¥¹¥È -  
52   $arrowext     = array('zip','lzh','rar','avi','mpg','wmv','mp3','wma','swf','txt','bmp','jpg','png','gif');   //µö²Ä³ÈÄ¥»Ò ¾®Ê¸»ú¡Ê¤½¤ì°Ê³°¤Ï¥¨¥é¡¼ -  
-   40   $title        = '上傳區';  //タイトル
-   41   $home         = 'http://www.cn-dos.net/';     //ホーム
-   42   $logfile      = "up.log";     //ログファイル名(変更する事)
-   43   $updir        = "./img/";     //アップ用ディレクトリ
-   44   $upsdir       = "./imgs/";    //サムネイル保存ディレクトリ
-   45   $prefix       = '';           //接頭語(up001.txt,up002.jpgならup)
-   46   $logmax       = 5000;         //log保存行(これ以上は古いのから削除)
-   47   $usrmax       = 25;           //User投稿量制限(バイト。全角はこの半分)
-   48   $commax       = 250;          //コメント投稿量制限(バイト。全角はこの半分)
-   49   $limitk       = 100000;       //アップロード制限(KB キロバイト)
-   50   $page_def     = 15;           //一ページの表示行数
-   51   $admin        = "del";        //削除管理パス
-   52   $auto_link    = 1;            //コメントの自動リンク(Yes=1;No=0);
-   53   $denylist     = array('192.168.0.1','sex.com','annony');      //アクセス拒否ホスト
-   54   $arrowext     = array('7z','zip','lzh','rar','avi','mpg','wmv','mp3','wma','swf','txt','bmp','jpg','png','gif');      //許可拡張子 小文字(それ以外はエラー
53 55
54   $count_start  = "2004/10/24"; //¥«¥¦¥ó¥¿³«»ÏÆü -  
55   $count_file   = "count.txt";  //¥«¥¦¥ó¥¿¥Õ¥¡¥¤¥ë¡Ê¶õ¥Õ¥¡¥¤¥ë¤Ç666¡Ë -  
-   56   $count_start  = "2008/02/11"; //カウンタ開始日
-   57   $count_file   = "count.txt";  //カウンタファイル(空ファイルで666)
56 58
57   $last_file    = "last.cgi";   //Ϣ³Åê¹ÆÀ©¸ÂÍÑ¥Õ¥¡¥¤¥ë¡Ê¶õ¥Õ¥¡¥¤¥ë¤Ç666¡Ë -  
58   $last_time    = 0;            //Ʊ°ìIP¤«¤é¤ÎϢ³Åê¹Æµö²Ä¤¹¤ë´Ö³Ö¡Êʬ¡Ë¡Ê0¤Ç̵À©¸Â¡Ë -  
-   59   $last_file    = "last.cgi";   //連続投稿制限用ファイル(空ファイルで666)
-   60   $last_time    = 0;            //同一IPからの連続投稿許可する間隔(分)(0で無制限)
59 61
60   /* ¹àÌÜɽ¼¨¡Ê´Ä¶­ÀßÄê¡Ë¤Î½é´ü¾õÂÖ (ɽ¼¨¤Ê¤éChecked ɽ¼¨¤·¤Ê¤¤¤Ê¤é¶õ) */ -  
61   $f_act  = 'checked="checked"';        //ACT¡Êºï½ü¥ê¥ó¥¯¡Ë -  
62   $f_com  = 'checked="checked"';        //¥³¥á¥ó¥È -  
63   $f_size = 'checked="checked"';        //¥Õ¥¡¥¤¥ë¥µ¥¤¥º -  
64   $f_mime = '';                         //MIME¥¿¥¤¥× -  
65   $f_date = 'checked="checked"';        //ÆüÉÕ¤± -  
66   $f_orig = 'checked="checked"';        //¸µ¥Õ¥¡¥¤¥ë̾ -  
-   62   /* 項目表示(環境設定)の初期状態 (表示ならChecked 表示しないなら空) */
-   63   $f_act  = 'checked="checked"';        //ACT(削除リンク)
-   64   $f_usr  = 'checked="checked"';        //コメント
-   65   $f_com  = 'checked="checked"';        //コメント
-   66   $f_size = 'checked="checked"';        //ファイルサイズ
-   67   $f_mime = '';                         //MIMEタイプ
-   68   $f_date = 'checked="checked"';        //日付け
-   69   $f_orig = 'checked="checked"';        //元ファイル名
67 70
68 if($act=="envset"){ 71 if($act=="envset"){
69   $cookval = @implode(",", array($acte,$come,$sizee,$mimee,$datee,$orige)); -  
-   72   $cookval = @implode(",", array($acte,$user,$come,$sizee,$mimee,$datee,$orige));
70   setcookie ("upcook", $cookval,time()+365*24*3600); 73   setcookie ("upcook", $cookval,time()+365*24*3600);
71 } 74 }
72 function _clean($str) { 75 function _clean($str) {
73   $str = htmlspecialchars($str); 76   $str = htmlspecialchars($str);
74   if (get_magic_quotes_gpc()) $str = stripslashes($str); 77   if (get_magic_quotes_gpc()) $str = stripslashes($str);
75   return $str; 78   return $str;
76 } 79 }
77 /* ¤³¤³¤«¤é¥Ø¥Ã¥À¡¼ */ -  
-   80 $unique_id = uniqid("");
-   81 /* ここからヘッダー */
78 ?> 82 ?>
79 <?php echo '<?xml version="1.0" encoding="euc-jp"?>'."\n" ?> -  
-   83 <?php echo '<?xml version="1.0" encoding="utf-8"?>'."\n" ?>
80 <!DOCTYPE html 84 <!DOCTYPE html
81    PUBLIC "-//W3C//DTD XHTML 1.1//EN" 85    PUBLIC "-//W3C//DTD XHTML 1.1//EN"
82    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> 86    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
83 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja"> -  
-   87 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh">
84 <head> 88 <head>
85 <meta http-equiv="Content-Type" content="text/html; charset=euc-jp" media="all" /> -  
-   89 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" media="all" />
86 <title><?php echo "$title" ?></title> 90 <title><?php echo "$title" ?></title>
-   91 <script type="text/javascript"><!--//--><![CDATA[//><!--
-   92 function gID(s) { return document.getElementById(s); }
-   93 /* 建立XMLHttpRequest物件 */
-   94 function JSONXMLHttpReq(){
-   95         var objxml = false;
-   96         /*@cc_on @*/
-   97         /*@if (@_jscript_version >= 5)
-   98         try{
-   99                 objxml = new ActiveXObject("Msxml2.XMLHTTP");
-   100         }catch(e){
-   101                 try{
-   102                         objxml = new ActiveXObject("Microsoft.XMLHTTP");
-   103                 }catch(e2){ objxml = false; }
-   104         }
-   105         @end @*/
-   106         if(!objxml && typeof XMLHttpRequest!='undefined') {
-   107                 objxml = new XMLHttpRequest();
-   108                 if(objxml.overrideMimeType) objxml.overrideMimeType('text/plain');
-   109         }
-   110         return objxml;
-   111 }
-   112 var xhttpjson=JSONXMLHttpReq();
-   113
-   114 function ParseProgress(){
-   115         if(xhttpjson.readyState==4){ // 讀取完成
-   116                 percent = xhttpjson.responseText;
-   117                 if(percent > 0) {
-   118                         gID("progressbarborder").style.display="block";
-   119                         gID("progressbartext").innerHTML = percent+"%";
-   120                         gID("progressbar").style.width = percent+"%";
-   121                 }
-   122                 if(percent < 100){
-   123                         setTimeout("getProgress()", 200);
-   124                 }
-   125         }
-   126 }
-   127 function getProgress(){
-   128         if(xhttpjson){
-   129                 xhttpjson.open('GET','progress.php?progress_key=<?php echo($unique_id)?>', true);
-   130                 xhttpjson.onreadystatechange = ParseProgress;
-   131                 xhttpjson.send(null);
-   132         }
-   133 }
-   134  
-   135 function startProgress(){
-   136     gID("up_progress").style.display="block";
-   137     setTimeout("getProgress()", 1000);
-   138 }
-   139 //--><!]]></script>
87 <link href="style.css" type="text/css" rel="stylesheet" /> 140 <link href="style.css" type="text/css" rel="stylesheet" />
88 </head> 141 </head>
89 <body> 142 <body>
90 143
91 <h1><?php echo "$title" ?></h1> 144 <h1><?php echo "$title" ?></h1>
92 <p>µ¤¤Ë¤Ê¤ë¥Í¥¿¤Ê¤É¡³(¡­¡¼¡®)¥Î</p> -  
93 -  
-   145 <p>請勿在論壇外轉載此區任何資料。</p>
-   146 <center><script type="text/javascript"><!--//--><![CDATA[//><!--
-   147 google_ad_client = "pub-8016619041936615";
-   148 //728x90, 已建立 2007/12/26
-   149 google_ad_slot = "8811687463";
-   150 google_ad_width = 728;
-   151 google_ad_height = 90;
-   152 //--><!]]></script>
-   153 <script type="text/javascript"
-   154 src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
-   155 </script></center>
94 <?php 156 <?php
95 /* ¥Ø¥Ã¥À¡¼¤³¤³¤Þ¤Ç */ -  
-   157 /* ヘッダーここまで */
96 $foot = <<<FOOT 158 $foot = <<<FOOT
97 159
98 <h2>Ãøºî¸¢É½¼¨</h2> -  
99 <p id="link"><a href="http://php.s3.to/">¥ì¥Ã¥ÄPHP!</a> + <a href="http://utu.under.jp">Wastepaper Basket</a></p> -  
-   160 <center><script type="text/javascript"><!--//--><![CDATA[//><!--
-   161 google_ad_client = "pub-8016619041936615";
-   162 //468x60, 已建立 2007/12/17
-   163 google_ad_slot = "0207867936";
-   164 google_ad_width = 468;
-   165 google_ad_height = 60;
-   166 google_language = "zh-TW";
-   167 //--><!]]></script>
-   168 <script type="text/javascript"
-   169 src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
-   170 </script></center>
-   171
-   172 <h2>著作権表示</h2>
-   173 <p id="link"><a href="http://php.s3.to/">レッツPHP!</a> + <a href="http://utu.under.jp">Wastepaper Basket</a> + <a href="http://scrappedblog.blogspot.com/">Roytam1</a></p>
100 174
101 </body> 175 </body>
102 </html> 176 </html>
103 FOOT; 177 FOOT;
104 178
105 function FormatByte($size){//¥Ð¥¤¥È¤Î¥Õ¥©¡¼¥Þ¥Ã¥È¡ÊB¢ªkB¡Ë -  
-   179 function FormatByte($size){//バイトのフォーマット(B→kB)
106   if($size == 0)                        $format = ""; 180   if($size == 0)                        $format = "";
107   else if($size <= 1024)                $format = $size."B"; 181   else if($size <= 1024)                $format = $size."B";
108   else if($size <= (1024*1024))         $format = sprintf ("%dkB",($size/1024)); 182   else if($size <= (1024*1024))         $format = sprintf ("%dkB",($size/1024));
109   else if($size <= (10*1024*1024))      $format = sprintf ("%.2fMB",($size/(1024*1024))); -  
-   183   else if($size <= (1024*1024*1024))    $format = sprintf ("%.2fMB",($size/(1024*1024)));
-   184   else if($size <= (1024*1024*1024*1024))       $format = sprintf ("%.2fGB",($size/(1024*1024*1024)));
110   else                                  $format = $size."B"; 185   else                                  $format = $size."B";
111 186
112   return $format; 187   return $format;
113 } 188 }
114 function paging($page, $total){//¥Ú¡¼¥¸¥ê¥ó¥¯ºîÀ® -  
-   189 function paging($page, $total){//ページリンク作成
115   global $PHP_SELF,$page_def; 190   global $PHP_SELF,$page_def;
116 191
117     for ($j = 1; $j * $page_def < $total+$page_def; $j++) { 192     for ($j = 1; $j * $page_def < $total+$page_def; $j++) {
118       if($page == $j){//º£É½¼¨¤·¤Æ¤¤¤ë¤Î¤ÏŽØŽÝŽ¸¤·¤Ê¤¤ -  
-   193       if($page == $j){//今表示しているのはリンクしない
119         $next .= "[<strong>$j</strong>]"; 194         $next .= "[<strong>$j</strong>]";
120       }else{ 195       }else{
121         $next .= sprintf("[<a href=\"%s?page=%d\">%d</a>]", $PHP_SELF,$j,$j);//¾¤ÏŽØŽÝŽ¸ -  
-   196         $next .= sprintf("[<a href=\"%s?page=%d\">%d</a>]", $PHP_SELF,$j,$j);//他はリンク
122       } 197       }
123     } 198     }
124     if($page=="all") return sprintf ("Page: %s [ALL]",$next,$PHP_SELF); 199     if($page=="all") return sprintf ("Page: %s [ALL]",$next,$PHP_SELF);
125     else return sprintf ("Page: %s [<a href=\"%s?page=all\">ALL</a>]",$next,$PHP_SELF); 200     else return sprintf ("Page: %s [<a href=\"%s?page=all\">ALL</a>]",$next,$PHP_SELF);
126 } 201 }
127 function error($mes1=""){//¤¨¤Ã¤é¡¼ŽÒŽ¯Ž¾Ž°Ž¼ŽÞ -  
-   202 function error($mes1=""){//えっらーメッセージ
128   global $foot; 203   global $foot;
129 204
130   echo $mes1; 205   echo $mes1;
131   echo $foot; 206   echo $foot;
132   exit; 207   exit;
133 } 208 }
134 /* start */ 209 /* start */
135 $limitb = $limitk * 1024; 210 $limitb = $limitk * 1024;
136 $host = @gethostbyaddr($REMOTE_ADDR); 211 $host = @gethostbyaddr($REMOTE_ADDR);
137 if(!$upcook) $upcook=@implode(",",array($f_act,$f_com,$f_size,$f_mime,$f_date,$f_orig)); -  
138 list($c_act,$c_com,$c_size,$c_mime,$c_date,$c_orig)=explode(",",$upcook); -  
-   212 if(!$upcook) $upcook=@implode(",",array($f_act,$f_usr,$f_com,$f_size,$f_mime,$f_date,$f_orig));
-   213 list($c_act,$c_usr,$c_com,$c_size,$c_mime,$c_date,$c_orig)=explode(",",$upcook);
139 214
140 /* ¥¢¥¯¥»¥¹À©¸Â */ -  
-   215 /* アクセス制限 */
141 if(is_array($denylist)){ 216 if(is_array($denylist)){
142   while(list(,$line)=each($denylist)){ -  
143     if(strstr($host, $line)) error('<h2>¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸</h2> -  
144 <p class="error">¥¢¥¯¥»¥¹À©¸Â:¥¢¥¯¥»¥¹¸¢¸Â¤¬¤¢¤ê¤Þ¤»¤ó</p>'); -  
-   217   foreach($denylist as $line){
-   218     if(strstr($host, $line)) error('<h2>錯誤</h2>
-   219 <p class="error">存取限制:您沒有使用權限</p>');
145   } 220   }
146 } 221 }
147 /* ºï½ü¼Â¹Ô */ -  
-   222 /* 削除実行 */
148 if($delid && $delpass!=""){ 223 if($delid && $delpass!=""){
149   $old = file($logfile); 224   $old = file($logfile);
150   $find = false; 225   $find = false;
151   for($i=0; $i<count($old); $i++){ 226   for($i=0; $i<count($old); $i++){
152     list($did,$dext,,,,,,$dpwd,)=explode("\t",$old[$i]); -  
-   227     list($did,$dext,,,,,,,$dpwd,)=explode("\t",$old[$i]);
153     if($delid==$did){ 228     if($delid==$did){
154       $find = true; 229       $find = true;
155       $del_ext = $dext; 230       $del_ext = $dext;
156       $del_pwd = rtrim($dpwd); 231       $del_pwd = rtrim($dpwd);
157     }else{ 232     }else{
158       $new[] = $old[$i]; 233       $new[] = $old[$i];
159     } 234     }
160   } 235   }
161   if(!$find) error('<h2>¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸</h2> -  
162 <p class="error">ºï½ü¥¨¥é¡¼:³ºÅö¥Õ¥¡¥¤¥ë¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó</p>'); -  
-   236   if(!$find) error('<h2>錯誤</h2>
-   237 <p class="error">刪除錯誤:此檔案找不到</p>');
163   if($delpass == $admin || substr(md5($delpass), 2, 7) == $del_pwd){ 238   if($delpass == $admin || substr(md5($delpass), 2, 7) == $del_pwd){
164     if(file_exists($updir.$prefix.$delid.".$del_ext")) unlink($updir.$prefix.$delid.".$del_ext"); 239     if(file_exists($updir.$prefix.$delid.".$del_ext")) unlink($updir.$prefix.$delid.".$del_ext");
165     if(file_exists($upsdir.$prefix.$delid.".$del_ext")) unlink($upsdir.$prefix.$delid.".$del_ext"); 240     if(file_exists($upsdir.$prefix.$delid.".$del_ext")) unlink($upsdir.$prefix.$delid.".$del_ext");
166     $fp = fopen($logfile, "w"); 241     $fp = fopen($logfile, "w");
167     flock($fp, 2); 242     flock($fp, 2);
168     fputs($fp, @implode("",$new));   243     fputs($fp, @implode("",$new));  
169     fclose($fp); 244     fclose($fp);
170   }else{ 245   }else{
171     error('<h2>¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸</h2> -  
172 <p class="error">ºï½ü¥¨¥é¡¼:¥Ñ¥¹¥ï¡¼¥É¤¬°ã¤¤¤Þ¤¹</p>'); -  
-   246     error('<h2>錯誤</h2>
-   247 <p class="error">刪除錯誤:密碼錯誤</p>');
173   } 248   }
174 } 249 }
175 /* ºï½ü¥Õ¥©¡¼¥à */ -  
-   250 /* 削除フォーム */
176 if($del){ 251 if($del){
177   error("<h2>ºï½ü¥Õ¥©¡¼¥à</h2> -  
-   252   error("<h2>刪除檔案</h2>
178 <form method=\"post\" enctype=\"multipart/form-data\" action=\"$PHP_SELF\"> 253 <form method=\"post\" enctype=\"multipart/form-data\" action=\"$PHP_SELF\">
179 <p>ºï½ü¥Ñ¥¹ÆþÎÏ<br /> -  
-   254 <p>請輸入密碼<br />
180 <input type=\"hidden\" name=\"delid\" value=\"".htmlspecialchars($del)."\" /> 255 <input type=\"hidden\" name=\"delid\" value=\"".htmlspecialchars($del)."\" />
181 <input type=\"password\" size=\"12\" name=\"delpass\" class=\"box\" tabindex=\"1\" accesskey=\"1\" /> 256 <input type=\"password\" size=\"12\" name=\"delpass\" class=\"box\" tabindex=\"1\" accesskey=\"1\" />
182 <input type=\"submit\" value=\"ºï½ü\" tabindex=\"2\" accesskey=\"2\" /></p> -  
-   257 <input type=\"submit\" value=\"刪除\" tabindex=\"2\" accesskey=\"2\" /></p>
183 </form> 258 </form>
184 <p class=\"tline\"><a href=\"$PHP_SELF?\">Ìá¤ë</a></p> -  
-   259 <p class=\"tline\"><a href=\"$PHP_SELF?\">返回</a></p>
185 "); 260 ");
186 } 261 }
187 /* ´Ä¶­ÀßÄê¥Õ¥©¡¼¥à */ -  
-   262 /* 環境設定フォーム */
188 if($act=="env"){ 263 if($act=="env"){
189   echo "<h2>´Ä¶­ÀßÄê</h2> -  
-   264   echo "<h2>環境設定</h2>
190 <form method=\"get\" action=\"$PHP_SELF\"> 265 <form method=\"get\" action=\"$PHP_SELF\">
191 <p><input type=\"hidden\" name=\"act\" value=\"envset\" /></p> 266 <p><input type=\"hidden\" name=\"act\" value=\"envset\" /></p>
192 <h3>ɽ¼¨ÀßÄê</h3> -  
-   267 <h3>顯示設定</h3>
193 <ul> 268 <ul>
194 <li><input type=\"checkbox\" name=\"acte\" value=\"checked\" tabindex=\"1\" accesskey=\"1\" $c_act />ACT</li> -  
195 <li><input type=\"checkbox\" name=\"come\" value=\"checked\" tabindex=\"2\" accesskey=\"2\" $c_com />COMMENT</li> -  
196 <li><input type=\"checkbox\" name=\"sizee\" value=\"checked\" tabindex=\"3\" accesskey=\"3\" $c_size />SIZE</li> -  
197 <li><input type=\"checkbox\" name=\"mimee\" value=\"checked\" tabindex=\"4\" accesskey=\"4\" $c_mime />MIME</li> -  
198 <li><input type=\"checkbox\" name=\"datee\" value=\"checked\" tabindex=\"5\" accesskey=\"5\" $c_date />DATE</li> -  
199 <li><input type=\"checkbox\" name=\"orige\" value=\"checked\" tabindex=\"6\" accesskey=\"6\" $c_orig />ORIG</li> -  
-   269 <li><input type=\"checkbox\" name=\"acte\" value=\"checked\" tabindex=\"1\" accesskey=\"1\" $c_act />刪</li>
-   270 <li><input type=\"checkbox\" name=\"user\" value=\"checked\" tabindex=\"2\" accesskey=\"2\" $c_com />用戶</li>
-   271 <li><input type=\"checkbox\" name=\"come\" value=\"checked\" tabindex=\"3\" accesskey=\"3\" $c_com />備註</li>
-   272 <li><input type=\"checkbox\" name=\"sizee\" value=\"checked\" tabindex=\"4\" accesskey=\"4\" $c_size />大小</li>
-   273 <li><input type=\"checkbox\" name=\"mimee\" value=\"checked\" tabindex=\"5\" accesskey=\"5\" $c_mime />MIME</li>
-   274 <li><input type=\"checkbox\" name=\"datee\" value=\"checked\" tabindex=\"6\" accesskey=\"6\" $c_date />日期</li>
-   275 <li><input type=\"checkbox\" name=\"orige\" value=\"checked\" tabindex=\"7\" accesskey=\"7\" $c_orig />原檔名</li>
200 </ul> 276 </ul>
201 <p>¾åµ­¤ÎÀßÄê¤Ë¤ÆˬÌ䤹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡Ê¢¨cookie¡Ë</p> -  
202 <p><input type=\"submit\" value=\"ÅÐÏ¿\" tabindex=\"7\" accesskey=\"7\" /><input type=\"reset\" value=\"¸µ¤ËÌ᤹\" tabindex=\"8\" accesskey=\"8\" /></p> -  
-   277 <p>以上設定將會以 cookie 保存以便再次使用。</p>
-   278 <p><input type=\"submit\" value=\"儲存\" tabindex=\"8\" accesskey=\"8\" /><input type=\"reset\" value=\"還原\" tabindex=\"9\" accesskey=\"9\" /></p>
203 </form> 279 </form>
204 <p class=\"tline\"><a href=\"$PHP_SELF?\">Ìá¤ë</a></p> -  
-   280 <p class=\"tline\"><a href=\"$PHP_SELF?\">返回</a></p>
205 281
206 "; 282 ";
207 echo $foot; 283 echo $foot;
208 exit; 284 exit;
209 } 285 }
210 $lines = file($logfile); 286 $lines = file($logfile);
211 /* ¥¢¥×¥í¡¼¥É½ñ¤­¹þ¤ß½èÍý */ -  
212 if(file_exists($upfile) && $com && $upfile_size > 0){ -  
213   if(strlen($com) > $commax) error('<h2>¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸</h2> -  
214 <p class="error">Åê¹Æ¥¨¥é¡¼:¥³¥á¥ó¥È¤¬Ä¹¤¹¤®¤Þ¤¹</p> -  
-   287 /* アプロード書き込み処理 */
-   288 if(file_exists($upfile) && $com && $usr && $upfile_size > 0){
-   289   if(isset($usr{$usrmax+1})) error('<h2>錯誤</h2>
-   290 <p class="error">上傳錯誤:用戶名稱過長</p>
-   291 ');
-   292   if(isset($com{$commax+1})) error('<h2>錯誤</h2>
-   293 <p class="error">上傳錯誤:備註過長</p>
215 '); 294 ');
216   if($upfile_size > $limitb)        error('<h2>¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸</h2> -  
217 <p class="error">Åê¹Æ¥¨¥é¡¼:¥Õ¥¡¥¤¥ë¤¬¥Ç¥«¤¹¤®¤Þ¤¹</p>'); -  
218   /* Ϣ³Åê¹ÆÀ©¸Â */ -  
-   295   if($upfile_size > $limitb)        error('<h2>錯誤</h2>
-   296 <p class="error">上傳錯誤:此檔案過大</p>');
-   297   /* 連続投稿制限 */
219   if($last_time > 0){ 298   if($last_time > 0){
220     $now = time(); 299     $now = time();
221     $last = @fopen($last_file, "r+") or die('<h2>¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸</h2> -  
222 <p class="error">Ϣ³Åê¹ÆÍÑ¥Õ¥¡¥¤¥ë $last_file ¤òºîÀ®¤·¤Æ¤¯¤À¤µ¤¤</p>'); -  
-   300     $last = @fopen($last_file, "r+") or die('<h2>錯誤</h2>
-   301 <p class="error">連続投稿用ファイル $last_file を作成してください</p>');
223     $lsize = fgets($last, 1024); 302     $lsize = fgets($last, 1024);
224     list($ltime, $lip) = explode("\t", $lsize); 303     list($ltime, $lip) = explode("\t", $lsize);
225     if($host == $lip && $last_time*60 > ($now-$ltime)){ 304     if($host == $lip && $last_time*60 > ($now-$ltime)){
226       error('<h2>¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸</h2> -  
227 <p class="error">Ϣ³Åê¹ÆÀ©¸ÂÃæ:»þ´Ö¤òÃÖ¤¤¤Æ¤ä¤êľ¤·¤Æ¤¯¤À¤µ¤¤</p>'); -  
-   305       error('<h2>錯誤</h2>
-   306 <p class="error">連続投稿制限中:時間を置いてやり直してください</p>');
228     } 307     }
229     rewind($last); 308     rewind($last);
230     fputs($last, "$now\t$host\t"); 309     fputs($last, "$now\t$host\t");
231     fclose($last); 310     fclose($last);
232   } 311   }
233   /* ³ÈÄ¥»Ò¤È¿·¥Õ¥¡¥¤¥ë̾ */ -  
234   $pos = strrpos($upfile_name,".");     //³ÈÄ¥»Ò¼èÆÀ -  
-   312   /* 拡張子と新ファイル名 */
-   313   $pos = strrpos($upfile_name,".");     //拡張子取得
235   $ext = substr($upfile_name,$pos+1,strlen($upfile_name)-$pos); 314   $ext = substr($upfile_name,$pos+1,strlen($upfile_name)-$pos);
236   $ext = strtolower($ext);//¾®Ê¸»ú²½ -  
-   315   $ext = strtolower($ext);//小文字化
237   if(!in_array($ext, $arrowext)) 316   if(!in_array($ext, $arrowext))
238     error('<h2>¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸</h2> -  
239 <p class="error">³ÈÄ¥»Ò¥¨¥é¡¼:¤½¤Î³ÈÄ¥»Ò¥Õ¥¡¥¤¥ë¤Ï¥¢¥Ã¥×¥í¡¼¥É¤Ç¤­¤Þ¤»¤ó</p>'); -  
240   /* µñÈݳÈÄ¥»Ò¤Ïtxt¤ËÊÑ´¹ -  
-   317     error('<h2>錯誤</h2>
-   318 <p class="error">檔尾錯誤:此檔尾無法上傳</p>');
-   319   /* 拒否拡張子はtxtに変換
241   for($i=0; $i<count($denyext); $i++){ 320   for($i=0; $i<count($denyext); $i++){
242     if(strstr($ext,$denyext[$i])) $ext = 'txt'; 321     if(strstr($ext,$denyext[$i])) $ext = 'txt';
243   } 322   }
244   */ 323   */
245   list($id,) = explode("\t", $lines[0]);//No¼èÆÀ -  
246   $id = sprintf("%03d", ++$id);         //¥¤¥ó¥¯¥ê -  
-   324   list($id,) = explode("\t", $lines[0]);//No取得
-   325   $id = sprintf("%03d", ++$id);         //インクリ
247   $newname = $prefix.$id.".".$ext; 326   $newname = $prefix.$id.".".$ext;
248 327
249   /* ¼«»ªÅ¾Á÷ */ -  
250   move_uploaded_file($upfile, $updir.$newname);//3.0.16¤è¤ê¸å¤Î¥Ð¡¼¥¸¥ç¥ó¤ÎPHP 3¤Þ¤¿¤Ï 4.0.2 ¸å -  
-   328   /* 自鯖転送 */
-   329   move_uploaded_file($upfile, $updir.$newname);//3.0.16より後のバージョンのPHP 3または 4.0.2 後
251   //copy($upfile, $updir.$newname); 330   //copy($upfile, $updir.$newname);
252   chmod($updir.$newname, 0604); 331   chmod($updir.$newname, 0604);
253 332
254   /* MIME¥¿¥¤¥× */ -  
255   if(!$upfile_type) $upfile_type = "text/plain";//¥Ç¥Õ¥©MIME¤Ïtext/plain -  
-   333   /* MIMEタイプ */
-   334   if(!$upfile_type) $upfile_type = "text/plain";//デフォMIMEはtext/plain
256 335
257   /* ¥³¥á¥ó¥È¾ */ -  
258   $com = htmlspecialchars($com);        //¥¿¥°ÊÑ´¹ -  
259   if(get_magic_quotes_gpc()) $com = stripslashes($com); //¡ï½üµî -  
-   336   /* コメント他 */
-   337   $com = htmlspecialchars($com);        //タグ変換
-   338   if(get_magic_quotes_gpc()) $com = stripslashes($com); //¥除去
-   339   $usr = htmlspecialchars($usr);        //タグ変換
-   340   if(get_magic_quotes_gpc()) $usr = stripslashes($usr); //¥除去
260 341
261   $now = gmdate("Y/m/d(D)H:i", time()+9*60*60); //ÆüÉդΥե©¡¼¥Þ¥Ã¥È -  
262   $pwd = ($pass) ? substr(md5($pass), 2, 7) : "*";      //¥Ñ¥¹¤ÃºîÀ®¡Ê̵¤¤¤Ê¤é*¡Ë -  
-   342   $now = gmdate("Y/m/d(D)H:i", time()+9*60*60); //日付のフォーマット
-   343   $pwd = ($pass) ? substr(md5($pass), 2, 7) : "*";      //パスっ作成(無いなら*)
263 344
264   $dat = @implode("\t", array($id,$ext,$com,$host,$now,$upfile_size,$upfile_type,$pwd,$upfile_name,)); -  
-   345   $dat = @implode("\t", array($id,$ext,$usr,$com,$host,$now,$upfile_size,$upfile_type,$pwd,$upfile_name,));
265 346
266   if(count($lines) >= $logmax){         //¥í¥°¥ª¡¼¥Ð¡¼¤Ê¤é¥Ç¡¼¥¿ºï½ü -  
-   347   if(count($lines) >= $logmax){         //ログオーバーならデータ削除
267     for($d = count($lines)-1; $d >= $logmax-1; $d--){ 348     for($d = count($lines)-1; $d >= $logmax-1; $d--){
268       list($did,$dext,)=explode("\t", $lines[$d]); 349       list($did,$dext,)=explode("\t", $lines[$d]);
269       if(file_exists($updir.$prefix.$did.".".$dext)) { 350       if(file_exists($updir.$prefix.$did.".".$dext)) {
270         unlink($updir.$prefix.$did.".".$dext); 351         unlink($updir.$prefix.$did.".".$dext);
271       } 352       }
272     } 353     }
273   } 354   }
274 355
275   $fp = fopen ($logfile , "w");         //½ñ¤­¹þ¤ß¥â¡¼¥É¤Ç¥ª¡¼¥×¥ó -  
-   356   $fp = fopen ($logfile , "w");         //書き込みモードでオープン
276   flock($fp ,2); 357   flock($fp ,2);
277   fputs ($fp, "$dat\n");                //ÀèƬ¤Ë½ñ¤­¹þ¤à -  
278   for($i = 0; $i < $logmax-1; $i++)     //¤¤¤Þ¤Þ¤Ç¤Îʬ¤òÄɵ­ -  
-   358   fputs ($fp, "$dat\n");                //先頭に書き込む
-   359   for($i = 0; $i < $logmax-1; $i++)     //いままでの分を追記
279     fputs($fp, $lines[$i]); 360     fputs($fp, $lines[$i]);
280   fclose ($fp); 361   fclose ($fp);
281   reset($lines); 362   reset($lines);
282   $lines = file($logfile);              //Æþ¤ì¤Ê¤ª¤· -  
-   363   $lines = file($logfile);              //入れなおし
283 } 364 }
284 foreach($arrowext as $list) $arrow .= $list." "; 365 foreach($arrowext as $list) $arrow .= $list." ";
285 /* Åê¹Æ¥Õ¥©¡¼¥à */ -  
286 echo '<h2>¥¢¥Ã¥×¥í¡¼¥É¥Õ¥©¡¼¥à</h2> -  
287 <form method="post" enctype="multipart/form-data" action="'.$PHP_SELF.'" > -  
288 <p>Up File<strong>¡Ê'.$limitk.' KB¤Þ¤Ç¡Ë</strong><br /> -  
-   366 /* 投稿フォーム */
-   367 echo '<h2>上傳檔案</h2>
-   368 <form method="post" enctype="multipart/form-data" action="'.$PHP_SELF.'" onsubmit="startProgress();return true;">
-   369 <p>檔案<strong>(最大 '.$limitk.' KB)</strong><br />
289 <input type="hidden" name="MAX_FILE_SIZE" value="'.$limitb.'" /> 370 <input type="hidden" name="MAX_FILE_SIZE" value="'.$limitb.'" />
-   371 <input type="hidden" name="APC_UPLOAD_PROGRESS" id="progress_key" value="'.$unique_id.'"/>
290 <input type="file" size="40" name="upfile" class="box" tabindex="1" accesskey="1" /> 372 <input type="file" size="40" name="upfile" class="box" tabindex="1" accesskey="1" />
291  Del Pass : <input type="password" size="10" name="pass" maxlength="10" class="box" tabindex="2" accesskey="2" /></p> -  
292 <p>Comment¡Ê¢¨¥³¥á¥ó¥È̵µ­Æþ¤Ï¥ê¥í¡¼¥É/URI¤Ï¥ª¡¼¥È¥ê¥ó¥¯¡Ë<br /> -  
293 <input type="text" size="45" name="com" value="" class="box" tabindex="3" accesskey="3" /> -  
294 <input type="submit" value="Up/Reload" tabindex="4" accesskey="4" /> -  
295 <input type="reset" value="Cancel" tabindex="5" accesskey="5" /></p> -  
296 <p>UP²Äǽ³ÈÄ¥»Ò¡§'.$arrow.'</p> -  
-   373 <p>用戶名稱(※沒輸入的話檔案將不會被儲存。)<br />
-   374 <input type="text" size="20" name="usr" value="" class="box" tabindex="1" accesskey="2" />
-   375  Del Pass : <input type="password" size="10" name="pass" maxlength="10" class="box" tabindex="3" accesskey="3" /></p>
-   376 <p>備註(※沒輸入的話檔案將不會被儲存。)<br />
-   377 <input type="text" size="45" name="com" value="" class="box" tabindex="4" accesskey="4" />
-   378 <input type="submit" value="上傳" tabindex="5" accesskey="5" />
-   379 <input type="reset" value="Cancel" tabindex="6" accesskey="6" /></p>
-   380 <p>可以上傳的檔尾:'.$arrow.'</p>
-   381 <div id="up_progress">上傳中… <span id="progressbartext"></span><div id="progressbarborder"><div id="progressbar"></div></div></div>
297 </form> 382 </form>
298 '; 383 ';
299 /* ¥«¥¦¥ó¥¿ */ -  
300 echo "<p class=\"uline\">$count_start ¤«¤é "; -  
-   384 /* カウンタ */
-   385 echo "<p class=\"uline\">$count_start 開始存取數: ";
301 if(file_exists($count_file)){ 386 if(file_exists($count_file)){
302   $fp = fopen($count_file,"r+");//Æɤ߽ñ¤­¥â¡¼¥É¤Ç¥ª¡¼¥×¥ó -  
303   $count = fgets($fp, 64);      //64¥Ð¥¤¥ÈorEOF¤Þ¤Ç¼èÆÀ¡¢¥«¥¦¥ó¥È¥¢¥Ã¥× -  
-   387   $fp = fopen($count_file,"r+");//読み書きモードでオープン
-   388   $count = fgets($fp, 64);      //64バイトorEOFまで取得、カウントアップ
304   $count++; 389   $count++;
305   fseek($fp, 0);                        //¥Ý¥¤¥ó¥¿¤òÀèƬ¤Ë¡¢¥í¥Ã¥¯¤·¤Æ½ñ¤­¹þ¤ß -  
-   390   fseek($fp, 0);                        //ポインタを先頭に、ロックして書き込み
306   flock($fp,2); 391   flock($fp,2);
307   fputs($fp, $count); 392   fputs($fp, $count);
308   fclose($fp);                  //¥Õ¥¡¥¤¥ë¤òÊĤ¸¤ë -  
309   echo $count;                  //¥«¥¦¥ó¥¿É½¼¨ -  
-   393   fclose($fp);                  //ファイルを閉じる
-   394   echo $count;                  //カウンタ表示
310 } 395 }
311 /* ¥â¡¼¥É¥ê¥ó¥¯ */ -  
-   396 /* モードリンク */
312 echo ' 397 echo '
313 ¡Ê¤³¤ï¤ì¤Ë¤¯¤µ¥ì¥Ù¥ë1¡ËD¡§Åê¹Æµ­»öºï½ü</p> -  
314 <p class="uline"><a href="'.$home.'">HOME</a> | <a href="'.$PHP_SELF.'?act=env">´Ä¶­ÀßÄê</a> | <a href="'.$PHP_SELF.'?">¥ê¥í¡¼¥É</a> | <a href="sam.php">²èÁü°ìÍ÷</a></p> -  
-   398  D:刪除檔案</p>
-   399 <p class="uline"><a href="'.$home.'">主頁</a> | <a href="'.$PHP_SELF.'?act=env">環境設定</a> | <a href="'.$PHP_SELF.'?">重新整理</a> | <a href="sam.php">圖像一覧</a></p>
315 400
316 <h2>¥Õ¥¡¥¤¥ë°ìÍ÷</h2> -  
-   401 <h2>檔案一覧</h2>
317 <p class="uline">'; 402 <p class="uline">';
318 /* ¥í¥°³«»Ï°ÌÃÖ */ -  
-   403 /* ログ開始位置 */
319 $st = ($page) ? ($page - 1) * $page_def : 0; 404 $st = ($page) ? ($page - 1) * $page_def : 0;
320 if(!$page) $page = 1; 405 if(!$page) $page = 1;
321 if($page == "all"){ 406 if($page == "all"){
322   $st = 0; 407   $st = 0;
323   $page_def = count($lines); 408   $page_def = count($lines);
324 } 409 }
325 echo paging($page, count($lines));//¥Ú¡¼¥¸¥ê¥ó¥¯ -  
326 //¥á¥¤¥ó¥Ø¥Ã¥À -  
-   410 echo paging($page, count($lines));//ページリンク
-   411 //メインヘッダ
327 echo "</p>\n"; 412 echo "</p>\n";
328 echo "<table summary=\"files\">\n<tr>"; 413 echo "<table summary=\"files\">\n<tr>";
329 if($c_act) echo "<th abbr=\"delete\" scope=\"col\">DEL</th>"; -  
330 echo "<th abbr=\"name\" scope=\"col\">NAME</th>"; -  
331 if($c_com) echo "<th abbr=\"comment\" scope=\"col\">COMMENT</th>"; -  
332 if($c_size) echo "<th abbr=\"size\" scope=\"col\">SIZE</th>"; -  
-   414 if($c_act) echo "<th abbr=\"delete\" scope=\"col\">刪</th>";
-   415 echo "<th abbr=\"name\" scope=\"col\">檔名</th>";
-   416 if($c_usr) echo "<th abbr=\"user\" scope=\"col\">用戶</th>";
-   417 if($c_com) echo "<th abbr=\"comment\" scope=\"col\">備註</th>";
-   418 if($c_size) echo "<th abbr=\"size\" scope=\"col\">大小</th>";
333 if($c_mime) echo "<th abbr=\"mime\" scope=\"col\">MIME</th>"; 419 if($c_mime) echo "<th abbr=\"mime\" scope=\"col\">MIME</th>";
334 if($c_date) echo "<th abbr=\"date\" scope=\"col\">DATE</th>"; -  
335 if($c_orig) echo "<th abbr=\"original name\" scope=\"col\">ORIG</th>"; -  
-   420 if($c_date) echo "<th abbr=\"date\" scope=\"col\">日期</th>";
-   421 if($c_orig) echo "<th abbr=\"original name\" scope=\"col\">原檔名</th>";
336 echo "</tr>\n"; 422 echo "</tr>\n";
337 //¥á¥¤¥óɽ¼¨ -  
-   423 //メイン表示
338 for($i = $st; $i < $st+$page_def; $i++){ 424 for($i = $st; $i < $st+$page_def; $i++){
339   if($lines[$i]=="") continue; 425   if($lines[$i]=="") continue;
340   list($id,$ext,$com,$host,$now,$size,$mtype,$pas,$orig,)=explode("\t",$lines[$i]); -  
-   426   list($id,$ext,$usr,$com,$host,$now,$size,$mtype,$pas,$orig,)=explode("\t",$lines[$i]);
341   $fsize = FormatByte($size); 427   $fsize = FormatByte($size);
342   if($auto_link) $com = ereg_replace("(https?|ftp|news)(://[[:alnum:]\+\$\;\?\.%,!#~*/:@&=_-]+)","<a href=\"\\1\\2\">\\1\\2</a>",$com); 428   if($auto_link) $com = ereg_replace("(https?|ftp|news)(://[[:alnum:]\+\$\;\?\.%,!#~*/:@&=_-]+)","<a href=\"\\1\\2\">\\1\\2</a>",$com);
343 429
344   $filename = $prefix.$id.".$ext"; 430   $filename = $prefix.$id.".$ext";
345   $target = $updir.$filename; 431   $target = $updir.$filename;
346 432
347   433  
348   echo "<tr><!--$host-->\n";//¥Û¥¹¥Èɽ¼¨ -  
-   434   echo "<tr><!--$host-->\n";//ホスト表示
349   if($c_act) echo "<td class=\"del\"><a href=\"$PHP_SELF?del=$id\">D</a></td>"; 435   if($c_act) echo "<td class=\"del\"><a href=\"$PHP_SELF?del=$id\">D</a></td>";
350   echo "<td>[<a href=\"$target\">$filename</a>]</td>"; 436   echo "<td>[<a href=\"$target\">$filename</a>]</td>";
-   437   if($c_usr) echo "<td>$usr</td>";
351   if($c_com) echo "<td>$com</td>"; 438   if($c_com) echo "<td>$com</td>";
352   if($c_size) echo "<td class=\"size\">$fsize</td>"; 439   if($c_size) echo "<td class=\"size\">$fsize</td>";
353   if($c_mime) echo "<td>$mtype</td>"; 440   if($c_mime) echo "<td>$mtype</td>";
354   if($c_date) echo "<td>$now</td>\n"; 441   if($c_date) echo "<td>$now</td>\n";
355   if($c_orig) echo "<td class=\"orig\">\n$orig</td>\n"; 442   if($c_orig) echo "<td class=\"orig\">\n$orig</td>\n";