source: temp/trunk/html/test/uehara/tree.php @ 8590

Revision 8590, 3.2 KB checked in by uehara, 20 years ago (diff)

blank

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1<?php
2/*
3 * Copyright(c) 2000-2006 LOCKON CO.,LTD. All Rights Reserved.
4 *
5 * http://www.lockon.co.jp/
6 */
7require_once("../../require.php");
8
9class LC_Page{
10    function LC_Page() {
11    }
12}
13
14$top_dir = USER_PATH;
15
16$objPage = new LC_Page();
17$objView = new SC_UserView("./templates");
18$objQuery = new SC_Query();
19
20switch($_POST['mode']) {
21
22case 'view':
23case 'download':   
24case 'delete':
25    // ¸½ºß¤Î¥Õ¥©¥ë¥À¤òɽ¼¨
26    $now_dir = $_POST['now_file'];
27
28case 'view':
29    // ÁªÂò¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤¬¥Ç¥£¥ì¥¯¥È¥ê¤Ê¤é°Üư
30    if(is_dir($_POST['select_file'])) {
31        $now_dir = $_POST['select_file'];
32    } else {
33        // javascript¤ÇÊÌÁëɽ¼¨(¥Æ¥ó¥×¥ì¡¼¥È¦¤ËÅϤ¹)
34sfprintr("err!?");
35        $objPage->tpl_javascript = "win02('". $_POST['select_file'] ."', 'user_data', '600', '400');";
36        exit;
37    }
38    break;
39
40case 'download':
41    if(is_dir($_POST['select_file'])) {
42        // ¥Ç¥£¥ì¥¯¥È¥ê¤Î¾ì¹ç¤Ïjavascript¥¨¥é¡¼
43        $objPage->tpl_javascript = "alert('¢¨¡¡¥Ç¥£¥ì¥¯¥È¥ê¤ò¥À¥¦¥ó¥í¡¼¥É¤¹¤ë¤³¤È¤Ï½ÐÍè¤Þ¤»¤ó¡£');";
44    } else {
45        // ¥Õ¥¡¥¤¥ë¤Î¾ì¹ç¤Ï¥À¥¦¥ó¥í¡¼¥É¤µ¤»¤ë
46        header('Content-Disposition: attachment; filename="'. basename($_POST['select_file']) .'"');
47    }
48    break;
49   
50case 'delete':
51    break;
52   
53default :
54    // ½é´üɽ¼¨¤Ï¥ë¡¼¥È¥Ç¥£¥ì¥¯¥È¥ê(user_data/upload/)¤òɽ¼¨
55    $now_dir = $top_dir;
56    break;
57}
58// ¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥êÇÛ²¼¤Î¥Õ¥¡¥¤¥ë°ìÍ÷¤ò¼èÆÀ
59$objPage->arrFileList = lfGetFileList($now_dir);
60
61sfprintr($objPage->arrFileList);
62
63sfprintr($now_dir);
64sfprintr($arrFileList);
65
66$objView->assignobj($objPage);
67$objView->display("tree.tpl");
68
69//-----------------------------------------------------------------------------------------------------------------------------------
70
71/*
72 * ´Ø¿ô̾¡§lfGetFileList()
73 * ÀâÌÀ¡¡¡§»ØÄê¥Ñ¥¹ÇÛ²¼¤Î¥Ç¥£¥ì¥¯¥È¥ê¼èÆÀ
74 * °ú¿ô1 ¡§¥Ä¥ê¡¼¤ò³ÊǼÇÛÎó
75 * °ú¿ô2 ¡§¼èÆÀ¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¥Ñ¥¹
76 */
77function lfGetFileList($dir) {
78    $arrFileList = array();
79    if (is_dir($dir)) {
80        if ($dh = opendir($dir)) {
81            $cnt = 0;
82            while (($file = readdir($dh)) !== false) {
83                // ./ ¤È ../¤ò½ü¤¯¥Õ¥¡¥¤¥ë¤Î¤ß¤ò¼èÆÀ
84                if($file != "." && $file != "..") {
85                    // ¹ÔËö¤Î/¤ò¼è¤ê½ü¤¯
86                    $dir = ereg_replace("\/$", "", $dir);
87                    $path = $dir."/".$file;
88                    $arrFileList[$cnt]['file_name'] = $file;
89                    $arrFileList[$cnt]['file_path'] = $path;
90                    $arrFileList[$cnt]['file_size'] = getDirSize($path);
91                    $arrFileList[$cnt]['file_time'] = date("Y/m/d", filemtime($path));
92                    $cnt++;
93                }
94            }
95            closedir($dh);
96        }
97    }
98   
99    return $arrFileList;
100}
101
102/*
103 * ´Ø¿ô̾¡§getDirSize()
104 * ÀâÌÀ¡¡¡§»ØÄꤷ¤¿¥Ç¥£¥ì¥¯¥È¥ê¤Î¥Ð¥¤¥È¿ô¤ò¼èÆÀ
105 * °ú¿ô1 ¡§¥Õ¥¡¥¤¥ë³ÊǼÇÛÎó
106 */
107function getDirSize($dir) {
108    if(file_exists($dir)) {
109        // ¥Ç¥£¥ì¥¯¥È¥ê¤Î¾ì¹ç²¼ÁØ¥Õ¥¡¥¤¥ë¤ÎÁíÎ̤ò¼èÆÀ
110        if (is_dir($dir)) {
111            $handle = opendir($dir);
112            while ($file = readdir($handle)) {
113                $path = $dir."/".$file;
114                if ($file != '..' && $file != '.' && !is_dir($path)) {
115                    $bytes += filesize($path);
116                } else if (is_dir($path) && $file != '..' && $file != '.') {
117                    $bytes += getDirSize($path);
118                }
119            }
120        } else {
121            // ¥Õ¥¡¥¤¥ë¤Î¾ì¹ç
122            $bytes = filesize($dir);
123        }
124    } else {
125        // ¥Ç¥£¥ì¥¯¥È¥ê¤¬Â¸ºß¤·¤Ê¤¤¾ì¹ç¤Ï0byte¤òÊÖ¤¹
126        $bytes = 0;
127    }
128   
129    if($bytes == "") $bytes = 0;
130   
131    return $bytes;
132}
133
134/*
135 * ´Ø¿ô̾¡§lfErrorCheck()
136 * ÀâÌÀ¡¡¡§¥¨¥é¡¼¥Á¥§¥Ã¥¯
137 */
138function lfErrorCheck($array) {
139
140   
141    return $arrErr;
142}
143?>
Note: See TracBrowser for help on using the repository browser.