Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (PHP) Счётчик скачиваний / 13 сообщений из 13, страница 1 из 1
09.09.2005, 23:38
    #33262336
lissyara
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Счётчик скачиваний
Народ, дайте пример. Готовый не надо, надо саму идею. Чтоб прямого урл на файл не было.
Я так понимаю надо просто отдать клиенту заголовок что это будет передаваться, размер "этого", и каким-то макаром отдать файл....

А подробней, или пример есть?

P.S. не тычьте в гугл рулит и прочее. Не рулит. Ничё не нашёл....
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
10.09.2005, 00:18
    #33262353
Ksnk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Счётчик скачиваний
phpclub таки рулит! download-index-counter - видимо подойдет...
...
Рейтинг: 0 / 0
10.09.2005, 00:40
    #33262356
Ksnk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Счётчик скачиваний
Нет! К сожалению тот скрипт не рулит...
Может быть в Гугле ?
...
Рейтинг: 0 / 0
10.09.2005, 11:15
    #33262419
lissyara
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Счётчик скачиваний
там ничё не даёт, требует регистрации :) Тока я на таких сайтах не регистрируюсь принципиально - если незарегистрированных посетителей в чём-то ограничивают - пошли они нах :)

Ещё поищу. Может найду чё.
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
10.09.2005, 14:20
    #33262482
DocAl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Счётчик скачиваний
Сам не делал, но очевидные направления поиска -- RFC2616, и телнетом приконнектиться к вебсерверу с запросом HEAD для какого-нибудь файла того типа, что хочешь отдавать, и поглядеть на заголовки.
...
Рейтинг: 0 / 0
10.09.2005, 15:42
    #33262522
Ksnk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Счётчик скачиваний
Ну и зря, imho, не регистрировался. :) Пока вреда от них - рассылка собственного дайджеста, от которой несложно отписаться.
Кстати, если завести на бесплатном сервере почтовый ящик - то даже и такого вреда от них не должно быть :)
Вот скачал, вроде загружает файл как требуется...
...
Рейтинг: 0 / 0
10.09.2005, 18:16
    #33262593
lissyara
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Счётчик скачиваний
Пасиб. Работает. Вникаю в идею.

Пока косяк нашёл один - докачки нету :(
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
10.09.2005, 18:26
    #33262599
Ksnk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Счётчик скачиваний
Может Вот это поможет?
...
Рейтинг: 0 / 0
11.09.2005, 01:02
    #33262742
lissyara
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Счётчик скачиваний
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
$file_for_download = "DreamweaverMX2004-en.zip";

$data_len = strlen($file_for_download);
$size = filesize($file_for_download);
$data_mod = filemtime($file_for_download);
$http_range = $_SERVER['HTTP_RANGE'];

header('Content-type: application/octet-stream');
header('Content-Disposition: attachment; filename="' . $file_for_download . '"');
header('Last-Modified: ' . date('D, d M Y H:i:s \G\M\T' , $data_mod));
header("Content-Length: $size");

$handle = fopen($file_for_download, "r");
if ($http_range !== ''){
 fseek($handle, intval(substr(getenv("HTTP_RANGE"),  6 )));
}else{
 fseek($handle,  0 ,  0 );
}
fpassthru($handle); 
fclose($handle);
Видимо я что-то где-то недопонимаю, потому что он даже не пытается выполнить строку
fseek($handle, intval(substr(getenv("HTTP_RANGE"), 6)));
К тому же я не знаю как ему посылать 'HTTP_RANGE', а пользоваться flashget для этого оччень неудобно :(
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
13.09.2005, 00:34
    #33265230
lissyara
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Счётчик скачиваний
Без идей?
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
13.09.2005, 15:11
    #33266609
Ksnk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Счётчик скачиваний
Ну, никто не говорил, что мир устроен наилучшим образом :)
Этот пример взят из какого-то треда и не обязан быть работоспособным ...

Нужно, бы , конечно, научиться искать в интернете :) К тому-же в коллекциях скриптов, которые я тут бросал, вполне могли быть и другие скрипты, которые мне не довелось просмотреть...

Вот - результат поска в Гугле по слову HTTP_RANGE. А Вот - ссылка из результатов этого поиска. Надеюсь поможет... Даже мне - помогла ;)
...
Рейтинг: 0 / 0
13.09.2005, 18:00
    #33267197
lissyara
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Счётчик скачиваний
пасиб. Вечером гляну.


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
14.09.2005, 13:00
    #33268719
lissyara
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Счётчик скачиваний
Пока так оставил.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
set_time_limit ( 0 );

$file_for_download = "DreamweaverMX2004-en.zip";
$data_mod = filemtime($file_for_download);

if (isset($_SERVER)){ $server = &$_SERVER; }else{ $server = 
&$GLOBALS["HTTP_SERVER_VARS"]; }

$workFileName = $file_for_download;
$handle = fopen($file_for_download, "rb");
$size = filesize($file_for_download);

if (isset($server["HTTP_RANGE"]))
{
preg_match ("/bytes=(\d+)-/", $server["HTTP_RANGE"], $m);
$contentSize = $size - intval($m[ 1 ]);
$p1 = $size - $contentSize;
$p2 = $size -  1 ;
$p3 = $size;
fseek ($handle, $p1);
header ("HTTP/1.1 206 Partial Content");
header('Last-Modified: ' . date('D, d M Y H:i:s \G\M\T' , $data_mod));
header ("Cache-Control: None");
header ("Pragma: no-cache");
header ("Accept-Ranges: bytes");
header('Content-Disposition: attachment; filename="' . $file_for_download . 
'"');
header ("Content-Range: bytes " . $p1 . "-" . $p2 . "/" . $p3);
header ("Content-Length: " . $contentSize);
header ("Content-Type: application/octet-stream");
header ("Proxy-Connection: close");
header ("");
}else {
$contentSize = $size;
header ("HTTP/1.1 200 OK");
header ("Cache-Control: None");
header('Last-Modified: ' . date('D, d M Y H:i:s \G\M\T' , $data_mod));
header ("Pragma: no-cache");
header ("Accept-Ranges: bytes");
header('Content-Disposition: attachment; filename="' . $file_for_download . 
'"');
header ("Content-Length: " . $contentSize);
header ("Content-Type: application/octet-stream");
header ("Proxy-Connection: close");
header ("");
}

fpassthru($handle);
fclose($handle);



Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (PHP) Счётчик скачиваний / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]