Version: 1.0
Type: Full Script
Category: File Management
License: Other
Description: Allows drag & drop additions to a website. Lists all directories and files and creates links.
I wrote this so various departments could add public documents to our internal website, with no html maintenance, by dropping them into a public area.
(icons not included.)
<? /* This script allows drag & drop additions to a web site by creating links based on directory structure. It is purposefully designed to work only within the directory scope of the webserver. Written by Jack Kelly Dobson - [email protected] Released under the "Please give credit where credit is due" license agreement. */ function Check_For_Slash($path) { if (substr($path, (strlen($path) - 1), 1) != "/") { $path = $path . "/"; } return($path); } function Get_Directory_Listing($path) { $base_dir = $_SERVER["DOCUMENT_ROOT"]; // all paths will be relative to webserver. $base_dir = Check_For_Slash($base_dir); if ($dir_handle = opendir($base_dir . $path)) { while ($file = readdir($dir_handle)) { $path = Check_For_Slash($path); if (($file != ".") && ($file != "..")) { chdir($base_dir . $path); if (is_dir($file)) { print("<A HREF='" . $_SERVER["PHP_SELF"] . "?PATH=" . $path . $file . "'><IMG BORDER='0' SRC='/images/icons/folder.gif'> " . $file . "</IMG></A><BR>"); } } } closedir($dir_handle); } if ($dir_handle = opendir($base_dir . $path)) { while ($file = readdir($dir_handle)) { $path = Check_For_Slash($path); chdir($base_dir. $path); if (($file != ".") && ($file != "..")) { if (is_file($file)) { print("<A HREF='" . $path . $file . "'>"); if (substr($file, strlen($file) - 3, 3) == "xls") { print("<IMG BORDER='0' SRC='/images/icons/excel.gif'>"); } elseif(substr($file, strlen($file) - 3, 3) == "doc") { print("<IMG BORDER='0' SRC='/images/icons/word.gif'>"); } elseif(substr($file, strlen($file) - 3, 3) == "ppt") { print("<IMG BORDER='0' SRC='/images/icons/powerpoint.gif'>"); } else { print("<IMG BORDER='0' SRC='/images/icons/page.gif'>"); } print(" " . $file . "</IMG></A><BR>"); } } } closedir($dir_handle); } } if (!IsSet($_GET["PATH"])) { $_GET["PATH"] = ""; //Set this to the directory you want to display. // Leave blank for document root. } Get_Directory_Listing($_GET["PATH"]); ?>