Sortowana lista plików do pobrania
Skrypt tworzy listę plików do pobrania z możliwością sortowania ich.
Listing
//Skrypt tworzy listę plików z możliwością sortowania *********
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-2">
</HEAD>
<BODY>
<?PHP
$files = array();
function readFiles(&$files){
if(!($fd = fopen("downloads.txt","r"))){
return;
}
while (!feof ($fd)){
$line = trim(fgets($fd));
$arr = explode(";", $line);
if(count($arr) == 4){
$files[] = array($arr[0], $arr[1], $arr[3]);
}
}
}
function printFiles($files){
?>
<TABLE border="0"><TR>
<TD><A HREF="http://127.0.0.1:4949/index.php?sorttype=0">Id</A></TD>
<TD><A HREF="http://127.0.0.1:4949/index.php?sorttype=1">Nazwa</A></TD>
<TD><A HREF="http://127.0.0.1:4949/index.php?sorttype=2">Opis</A></TD>
</TR>
<?
for($i = 0; $i < count($files); $i++){
echo ("<TR><TD>");
echo "<A HREF='download.php?fileid=".$files[$i][0]."'>".$files[$i][0]."</A>";
echo ("</TD><TD>");
echo "<A HREF='download.php?fileid=".$files[$i][0]."'>".$files[$i][1]."</A>";
echo ("</TD><TD>");
echo "<A HREF='download.php?fileid=".$files[$i][0]."'>".$files[$i][2]."</A>";
echo ("</TD></TR>");
}
echo("</TABLE>");
}
function sortFiles(&$files, $left, $right, $sorttype){
if($left < $right){
$ind = $left;
for($i = $left + 1; $i <= $right; $i++){
if(strcmp($files[$i][$sorttype], $files[$left][$sorttype]) < 0){
$ind = $ind + 1;
$temp0 = $files[$ind][0];
$temp1 = $files[$ind][1];
$temp2 = $files[$ind][2];
$files[$ind][0] = $files[$i][0];
$files[$ind][1] = $files[$i][1];
$files[$ind][2] = $files[$i][2];
$files[$i][0] = $temp0;
$files[$i][1] = $temp1;
$files[$i][2] = $temp2;
}
}
$temp0 = $files[$left][0];
$temp1 = $files[$left][1];
$temp2 = $files[$left][2];
$files[$left][0] = $files[$ind][0];
$files[$left][1] = $files[$ind][1];
$files[$left][2] = $files[$ind][2];
$files[$ind][0] = $temp0;
$files[$ind][1] = $temp1;
$files[$ind][2] = $temp2;
sortFiles($files, $left, $ind - 1, $sorttype);
sortFiles($files, $ind + 1, $right, $sorttype);
}
}
if(isSet($_GET['sorttype'])) $sorttype = $_GET['sorttype'];
else $sorttype = 0;
if(!is_numeric($sorttype)) $sorttype = 0;
readFiles($files);
sortFiles($files, 0, count($files) - 1, $sorttype);
printFiles($files);
?>
</BODY>
</HTML>
// Zawartość pliku downloads.txt ********************************
00001;IMG_4026.jpg;d:\!\downloads\;Kemping nad jez. Dłużek
00002;IMG_3320.jpg;d:\!\downloads\;Bieszczady 1
00003;IMG_3321.jpg;d:\!\downloads\;Bieszczady 2
00004;IMG_3322.jpg;d:\!\downloads\;Kotlina Kłodzka
00005;IMG_3323.jpg;d:\!\downloads\;Widok z Rys
00006;IMG_3314.jpg;d:\!\downloads\;Zdjęcie z wakacji na Mazurach
00007;IMG_3315.jpg;d:\!\downloads\;Zdjęcie z wakacji nad morzem
00008;IMG_3316.jpg;d:\!\downloads\;Pocztówka z gór
00009;IMG_3317.jpg;d:\!\downloads\;Tatry zimą
00010;IMG_3318.jpg;d:\!\downloads\;Jezioro Mamry
Dodano przez: igor
Ranga: Administrator serwisu Punktów: 0
Ranga: Administrator serwisu Punktów: 0
Komentarze użytkowników
czy plik txt jest generowany po stronie serwera? tworzony jest na podstawie plikow znajdujacych sie np w katalogu, czy trzeba samemu utworzyc liste plikow w tekstowym?
autor: wwwftp | 13096 | 2018-01-24 12:45:12
Pliki są zapisane w pliku downloads.txt
autor: divix | 13112 | 2018-06-09 21:41:02
:: Losowe artykuły
:: Wymiana linków
Modowe inspiracje |
Android Gry i Aplikacje |
ZaplanujTransport.pl: Przeprowadzki, transport, aukcje |
Logo dla firmy |
Change Tires - Car Weather Forecast Reminder |
Laminas: MVC Framework for PHP |
IT Books Reviews and Programming: JS, JAVA, PHP, ANDROID, CSS |
Katalog roślin |
Programming articles: JAVA, PHP, C++, Python, JavaScript |
Kancelaria Adwokacka Łukasz Huszno