ten dzila bardzo dobrze dla mnie
[php:1:c5868f1710]<?php
# link do download jest jak #
#
http://www.domain.com/download.php?id=1 #
# id=1 jest to pierwszego pliku (pirewszy.exe) ponizej #
$files = array(
1 => "pierwszy.exe",
2 => "drugi.exe",
3 => "trzeci.exe"
); // mozesz dodac wiecej plikow
// 4 => "zdjecie.gif";
// 5 => "skript.php";
$files_folder = "/home/virtual/siteX/fst/var/www/html/sekret/"; // dokladna sciezka do folderu z plikami do zaladowania // with trailing slash
$log_path = "/home/virtual/siteX/fst/var/www/html/"; // dokladna sciezka do log pliku
$log_file = "zaladowany.txt"; // nazwa log pliku
#
#####################################################################
if ($id > count($files)) // zobacz czy ktos nie proboje zlamac kodu
{
echo "Nie mazna znalesc tego pliku do zaladowania."; // jesli id jest wieksze niz ilosc plikow
// daj blad
}else{ // lub idz dalej
$date = date("Y-m-d H:i:s"); // Dzisiejsza data 2001-05-22 18:15:16 format
$log = fopen($log_path.$log_file, "a"); // otworz log plik
fputs($log, $m.",".$date."n"); // napisz ktory file i o ktorej byl zaladowany
fclose($log); // zamknij log plik
# wyslij plik do zaladowania #
$size = $files_folder . $files[$id];
if (detect_browser($HTTP_USER_AGENT) == "ie")
{
Header("Content-type: application/force-download");
}else{
Header("Content-Type: application/octet-stream");
}
Header("Content-Length: ".filesize($size));
Header("Content-Disposition: attachment; filename=$files[$id]");
readfile($size);
}
#########################################################################
function detect_browser($var)
{
if(eregi("(msie) ([0-9]{1,2}.[0-9]{1,3})", $var))
{
$c = "ie";
}else{
$c = "nn";
}
return $c;
}
?>[/php:1:c5868f1710]
ten skrypt pozwala na niepokazanie gdzie znajduja sie pliki i zapisuje w log kiedy i ktory plik zostal zaladowany
bardzo latwo mozna dodac kto zaladowal ten plik (ip, domain itp)
Bardzo wazne - musisz podac prawidlowa sciezke do plikow
w tym przypadku musisz zaladowac pliki do sekret folder na server
i zaladowany.txt zrob chmod 666 lub 777 (abys mogl zapisac)