Просмотр полной версии : Закачка в фоновом режиме
Здравствуйте!
Скажите пожалуйста, возможно ли сделать так, чтоб пользователь на сайте нажал кнопку и сервер начал скачивать какой либо файл по ссылке а, после закачки добавил какие либо данные в БД...
morgan, сомневаюсь что без доп.софта это можно было осуществить, только сам клик можно зафиксировать..
А тогда возможно ли начать качать файл и одновременно передавать его пользователю, так чтоб у него шла обычная закачка???
Т.е. не сохранять файл на сервере, а сразу отдавать его пользователю???
Добавлено через 1 минуту
Хотяб приблизительную логику может кто напишет...
morgan, это уже п2п, и об обычной закачке речь не идёт, зато есть хорошая новость для вас - установив торрент-треккер вы сможете отслеживать что и как скачивается :)
это уже п2п, и об обычной закачке речь не идёт
Как раз нет...
установив торрент-треккер вы сможете отслеживать что и как скачивается
Торрент - протокол, разработанный для обмена файлами. Он является протоколом peer-to-peer и позволяет организовать обмен данными через интернет.
Трекер - специализированный сервер, работающий по протоколу HTTP. Трекер нужен для того, чтобы клиенты могли найти друг друга.
µTórrent - (также известный как uTorrent или microTorrent) — бесплатный BitTorrent-клиент для Microsoft Windows и Mac OS X, написанный на C++ и отличающийся небольшим размером и высокой скоростью работы при достаточно большой функциональности.
Т.е. вы предлагаете мне ставить сервер?
возможно ли начать качать файл и одновременно передавать его пользователю
Я имел ввиду качать не у другого пользователя, а по протоколу HTTP из интернета...
Добавлено через 21 минуту
Вот скриптик, он открывает файл по ссылке и считывает с него по частям данные и сохраняет в другой файл...
<?php
$sourceFileName='http://test.ru/test.swf';
$origFileName='local.name';
$fp = @fopen($sourceFileName, "rb");
$fd = @fopen($origFileName, "w");
if ($fp && $fd) {
while (!feof($fp)) {
$st = fread($fp, 4096);
fwrite($fd, $st);
}
}
@fclose($fp);
@fclose($fd);
?>Дак вот нужно сделать так, чтобы он его не сохранял в файл, а сразу передавал в браузер и тем самым эмулировал отдачу файла, чтоб браузер думал что качает обычный файл...
Я имел ввиду качать не у другого пользователя, а по протоколу HTTP из интернета...
а, понятно, я думал, что с тебя отдавать должно :)
Трекер - специализированный сервер, работающий по протоколу HTTP. Трекер нужен для того, чтобы клиенты могли найти друг друга.
Ну во-первых, не совсем сервер, скорее серверный скрипт, во-вторых, поиском их функционал не ограничивается.
Т.е. вы предлагаете мне ставить сервер?
Я так понимаю, сервер у вас уже есть в том или ином виде, иначе куда вы будете заливать свой скрипт? :)
Я так понимаю, сервер у вас уже есть в том или ином виде
Хостинг есть, само сабой...
Но пока тестирую скрипт на localhost.
Добавлено через 53 минуты
Всем спасибо сделал так:
<?php
$sourceFileName = 'http://test.ru/test.rar';
$TempName = explode('/', $sourceFileName);
$origFileName = $TempName[sizeof($TempName)-1];
$fp = @fopen($sourceFileName, "rb");
//$fd = @fopen($origFileName, "w");
if ($fp) {
header('Content-Disposition: attachment; filename="'.$origFileName.'"');
while (!feof($fp)) {
$st = fread($fp, 4096);
//fwrite($fd, $st);
echo $st;
}
}
@fclose($fp);
@fclose($fd);
?>
vBulletin® v3.8.4, Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot