function dir_scan($directory, $slash = "/") { if ($GLOBALS["num"] == 0) { echo "<title>{$directory}</title>\n<h1><a href=\"file:///{$directory}\">{$directory}</a></h1>\n"; } $files = opendir($directory); while (false !== ($file = readdir($files))) { if ($file != "." && $file != "..") { if (is_dir($directory . $file)) { echo "[DIR] "; } //echo "$directory$file\n"; echo "<a href=\"file:///{$directory}{$file}\">{$directory}{$file}</a>\n"; $GLOBALS["num"] = $GLOBALS["num"] + 1; if (is_dir($directory . $file)) { dir_scan($directory . $file . $slash, $slash); } } } closedir($files); }
function dir_scan($name) { if (!is_dir($name)) { echo "{$name} is not a dir\n"; } if ($o = @opendir($name)) { while (false !== ($file = readdir($o))) { if ($file == '.' or $file == '..' or $file == basename(__FILE__)) { continue; } else { if (is_dir($name . "/" . $file)) { dir_scan($name . "/" . $file); } else { a($name . "/" . $file); } } } closedir($o); } else { echo "i can't open {$name} dir\n"; } }
function dir_scan($folder) { $files = glob($folder); global $dirs; foreach ($files as $f) { if (is_dir($f)) { $dirs[] = $f; $files = array_merge($files, dir_scan($f . '/*')); // scan subfolder } } return $files; }
} else { $value = 0; } fclose($file); return $value; } } } //Function for showing the edit page. function edit($file) { return "<tr><td><center><form action='" . $surl . "?action=write&file=" . $_GET['file'] . "' method='post'>\n\t<textarea name='content' cols=100 rows=15>" . fedit($file, 'r') . "</textarea><br /><input type='submit' value='Save'></center></form></td></tr>"; } //Setup the Action if (!isset($_GET['action'])) { $action = dir_scan($current_dir); } elseif ($_GET['action'] == 'edit') { $action = edit($_GET['file']); } elseif ($_GET['action'] == 'write') { if (fedit($_GET['file'], 'w', $_POST['content'])) { $action = "<tr><td>Successful</td></tr>"; } else { $action = "<tr><td>Error Writing File, Possible Permission Problem</td></tr>"; } } elseif ($_GET['action'] == 'download') { $filename = $_GET['file']; $filename = trim($filename); $file = $path . $filename; $file_size = filesize($file); if (strstr($HTTP_USER_AGENT, "MSIE 5.5")) { header("Content-Type: doesn/matter");
/** * Copy all the content of a directory * * @param string $s source directory * @param string $d destination directory */ function dir_copy($source, $dest) { if (is_file($source)) { copy($source, $dest); chmod($dest, fileperms($source)); } else { mkdir($dest, 0777); if ($l = dir_scan($source)) { foreach ($l as $f) { dir_copy("{$source}/{$f}", "{$dest}/{$f}"); } } } }