Here is what I came up with for you. Kind of crude but I think you'll get the idea. It sorts in asc and rev order on any field in the row.
PHP Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Untitled</title>
</head>
<body>
<?
$d = dir(".");
$sorter = ($sorter) ? $sorter : 'filename';
$sortorder = ($sortorder) ? $sortorder : 'asc';
$i = 0;
while($f = $d->read()) {
if(($f != '.') && ($f != '..') && !is_dir($f)) {
switch($sorter) {
case 'filesize':
$files[] = array("filesize" => filesize($f),
"filedate" => date("m/d/Y G:i:s", filectime($f)),
"filename" => $f
);
break;
case 'filedate':
$files[] = array("filedate" => date("m/d/Y G:i:s", filectime($f)),
"filename" => $f,
"filesize" => filesize($f)
);
break;
default:
$files[] = array("filename" => $f,
"filedate" => date("m/d/Y G:i:s", filectime($f)),
"filesize" => filesize($f)
);
break;
}
}
}
if($sortorder == 'asc') {
sort($files);
}
else {
rsort($files);
}
$d->close();
?>
<table width=600 border=1>
<tr><td><a href="<?=$PHP_SELF?>?sorter=filename&sortorder=asc"><strong>File Name</strong></a> <a href="<?=$PHP_SELF?>?sorter=filename&sortorder=desc">(rev)</a></td><td><a href="<?=$PHP_SELF?>?sorter=filesize&sortorder=asc"><strong>File Size</strong></a> <a href="<?=$PHP_SELF?>?sorter=filesize&sortorder=desc">(rev)</a></td><td><a href="<?=$PHP_SELF?>?sorter=filedate&sortorder=asc"><strong>Last Modified</strong></a> <a href="<?=$PHP_SELF?>?sorter=filedate&sortorder=desc">(rev)</a></td></tr>
<?
foreach($files as $key => $val) {
?>
<tr><td><?=$files[$key][filename]?></td><td><?=$files[$key][filesize]?></td><td><?=$files[$key][filedate]?></td></tr>
<?
}
?>
</table>
</body>
</html>
Bookmarks