Hallo
Eigentlich eine ganz simple Sache:
Ich möchte für unser Intranet verschiedene Documente auf dem Webserver in einzelnen Verzeichnissen hinterlegen. Der Inhalt der Verzeichnisse soll als Webseite erscheinen, in der die Dokumente angezeigt werden. Bisher haben wir das mit Dirhtml erledigt, doch auf die Dauer ist es lästig, wegen jedem neuen Dokument eine Seite zu erstellen. Deshalb bin ich auf php gekommen. Ich habe aber nur sehr wenig Plan von php, im Netz habe ich ein script gefunden, das eigentlich genau das macht, was ich brauche:
Frage 1:
Ich benötige aber jetzt noch die Angabe des Erstellungsdatums der Datei dahinter. Ich google und lese schon den ganzen Tag, aber ich komme nicht weiter. Wäre jemand so nett, und hilft mir weiter?
Die Anzeige sollte so aussehen:
Datei 1.pdf 01.01.2005
Datei 2.pdf 02.02.2005
usw.
Frage2:
Kann ich das Script auch so einstellen, dass immer das aktuelle Verzeichnis ausgelesen wird, ohne dass manuel das Verzeichnis im Quelltext geändert werden muss, sprich, dass eine Musterdatei einfach ins neue Verzeichnis kopiert wird und es funktioniert?
Herzlichen Dank im voraus an alle, die einem Nichtswisser weiterhelfen (ich weiß auch, was ich in der nächsten Zeit lernen werde...).
Gruß
Harry
Eigentlich eine ganz simple Sache:
Ich möchte für unser Intranet verschiedene Documente auf dem Webserver in einzelnen Verzeichnissen hinterlegen. Der Inhalt der Verzeichnisse soll als Webseite erscheinen, in der die Dokumente angezeigt werden. Bisher haben wir das mit Dirhtml erledigt, doch auf die Dauer ist es lästig, wegen jedem neuen Dokument eine Seite zu erstellen. Deshalb bin ich auf php gekommen. Ich habe aber nur sehr wenig Plan von php, im Netz habe ich ein script gefunden, das eigentlich genau das macht, was ich brauche:
PHP-Code:
<?
$the_file_array = Array();
$the_folder_array = Array();
$handle = opendir('/opt/lampp/htdocs/webseiten/verzeichnis/');
while (false !== ($file = readdir($handle))) {
if ($file != ".") {
if (filetype($file) == "file") { $the_file_array[] = $file; } else if (filetype($file) == "dir") {$the_folder_array[] = $file; }
}
}
closedir($handle);
sort ($the_file_array);
reset ($the_file_array);
sort ($the_folder_array);
reset ($the_folder_array);
while (list ($key, $val) = each ($the_folder_array)) {
if (($val != ".") && (!fnmatch("*.php*", $val))&& (!fnmatch("*phpBB2*", $val))&& (!fnmatch("*alt*", $val))) {
if ((fnmatch("~~", $val)) || (fnmatch("*~~", $val))) {
// CASE: An outcommented file. - Syn: "~<filename>" - Exp: "~nottobeseen.txt"
echo "** SECRET FILE **<br>";
}else{
if ($val == "..") {
if ($rootdir == "1") {
// CASE: Don't show the way upward if this is the root directory.
// Root Directory, do nothing.
}else{
// CASE: Show the ".." to go back if this is NOT the root directory.
echo '<a href="'.$val.'/">zurück</a><br>';
}
}else{
// CASE: All normal folders. No ".." and no ".".
echo '<a href="'.$val.'/">/'.$val.'/</a><br>';
}
}
}
}
while (list ($key, $val) = each ($the_file_array)) {
if (($val != ".") && (!fnmatch("*.php*", $val))&& (!fnmatch("index.htm*", $val))&& (!fnmatch("*.gif*", $val))&& (!fnmatch(".htaccess*", $val))) {
if ((fnmatch("~~", $val)) || (fnmatch("*~~", $val))) {
// CASE: An outcommented file. - Syn: "~<filename>" - Exp: "~nottobeseen.txt"
echo "** SECRET FILE **<br>";
}else{
echo '<a href="'.$val.'">'.$val.'</a><br>';
}
}
}
?>
Ich benötige aber jetzt noch die Angabe des Erstellungsdatums der Datei dahinter. Ich google und lese schon den ganzen Tag, aber ich komme nicht weiter. Wäre jemand so nett, und hilft mir weiter?
Die Anzeige sollte so aussehen:
Datei 1.pdf 01.01.2005
Datei 2.pdf 02.02.2005
usw.
Frage2:
Kann ich das Script auch so einstellen, dass immer das aktuelle Verzeichnis ausgelesen wird, ohne dass manuel das Verzeichnis im Quelltext geändert werden muss, sprich, dass eine Musterdatei einfach ins neue Verzeichnis kopiert wird und es funktioniert?
Herzlichen Dank im voraus an alle, die einem Nichtswisser weiterhelfen (ich weiß auch, was ich in der nächsten Zeit lernen werde...).
Gruß
Harry
Kommentar