Lista plików z opisami
Skrypt tworzy listę plików do pobrania z opisami.
Listing
// Skrypt generujący listę odnośników *************************
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-2">
</HEAD>
<BODY>
<OL>
<?PHP
function printFiles(){
if(!($fd = fopen("downloads.txt","r"))){
return;
}
while (!feof ($fd)){
$line = trim(fgets($fd));
$arr = explode(";", $line);
if(count($arr) == 3)
echo "<LI> <A HREF='download.php?filename=$arr[0]" .
"'>$arr[2] ($arr[0])</A>";
}
}
printFiles();
?>
</OL>
</BODY>
</HTML>
// Skrypt wysyłający pliki do przeglądarki************************
<?PHP
function send($name)
{
if(!($fd = fopen("downloads.txt","r"))){
echo('Wewnętrzny błąd serwera!');
return;
}
$found = false;
while (!feof ($fd)){
$line = trim(fgets($fd));
$arr = explode(";", $line);
if(count($arr) == 3){
if($name === $arr[0]){
$found = true;
$path = $arr[1];
break;
}
}
}
if((!$found) || (!file_exists($path.$name))){
header("Location: 404.html");
return;
}
$fd = fopen($path.$name, "r");
$size = filesize($path.$name);
$contents = fread($fd, $size);
fclose($fd);
header("Content-Type: application/octet-stream");
header("Content-Length: $size;");
header("Content-Disposition: attachment; filename=$name");
echo $contents;
}
if(isSet($_GET['filename'])){
$name = $_GET['filename'];
if($name == ""){
header("Location: 404.html");
}
else{
send($name);
}
}
else{
header("Location: 404.html");
}
// Zawartość pliku downloads.txt
IMG_4026.jpg;d:\!\downloads\;Kemping nad jez. Dłużek
IMG_3320.jpg;d:\!\downloads\;Bieszczady 1
IMG_3321.jpg;d:\!\downloads\;Bieszczady 2
IMG_3322.jpg;d:\!\downloads\;Kotlina Kłodzka
IMG_3323.jpg;d:\!\downloads\;Widok z Rys
IMG_3314.jpg;d:\!\downloads\;Zdjęcie z wakacji na Mazurach
IMG_3315.jpg;d:\!\downloads\;Zdjęcie z wakacji nad morzem
IMG_3316.jpg;d:\!\downloads\;Pocztówka z gór
IMG_3317.jpg;d:\!\downloads\;Tatry zimą
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
:: 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