• Главная
  • » PHP
  • » как на php сделать фоновую закачку файла

#1 2013.07.10 07:24

alibek_kz
Участник
Зарегистрирован: 2013.07.10
Сообщений: 26
Карма: 0
Профиль

как на php сделать фоновую закачку файла

как?можно ли реализовать?

Неактивен

#2 2013.07.10 10:14

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: как на php сделать фоновую закачку файла

ложить задания в бд. и отдельным скриптом по крону выкачивать.

Неактивен

#3 2013.07.10 10:21

alibek_kz
Участник
Зарегистрирован: 2013.07.10
Сообщений: 26
Карма: 0
Профиль

Re: как на php сделать фоновую закачку файла

вообщем эти файлы через сокеты и функции copy не закачиваеться.только через curl.закачка видео в формате 3gp из ютуба

Код:

1
span style="color: #0000BB"><?php$url = 'domain.com/file.3gp';$targetFile = fopen('m.3gp', 'w');$ch = curl_init($url);curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);curl_setopt($ch, CURLOPT_NOPROGRESS, false);curl_setopt($ch, CURLOPT_PROGRESSFUNCTION, 'progressCallback');curl_setopt($ch, CURLOPT_FILE, $targetFile);curl_exec($ch);fclose($ch);function progressCallback($download_size, $downloaded_size, $upload_size, $uploaded_size){ static $previousProgress = 0; if ( $download_size == 0 ) $progress = 0; else $progress = round($downloaded_size * 100/$download_size);}?>

этим способом некачает в фоновом режиме

Отредактировано alibek_kz (2013.07.10 12:16)

Неактивен

#4 2013.07.10 11:46

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: как на php сделать фоновую закачку файла

вот только при чем тут фоновая загрузка..)

Неактивен

#5 2013.07.10 11:54

alibek_kz
Участник
Зарегистрирован: 2013.07.10
Сообщений: 26
Карма: 0
Профиль

Re: как на php сделать фоновую закачку файла

не понял?

Неактивен

#6 2013.07.10 12:21

alibek_kz
Участник
Зарегистрирован: 2013.07.10
Сообщений: 26
Карма: 0
Профиль

Re: как на php сделать фоновую закачку файла

например пользаватель найдет себе видео и нажмет на кнопку создать 3gp и должен файл 3gp скачаться на сервер в фоновом режиме.и пользаватель когда обновляет страницы ему скрипт должна выводить процент загрузки файла на сервер.ну понял?

Неактивен

#7 2013.07.10 13:00

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: как на php сделать фоновую закачку файла

alibek_kz, это не фоновая загрузка. Ты скачиваешь файл в 1 потоке. Если пользователь перезагрузит страницу, то закачка оборвется (если не стоит ignore_user_abort). Это просто прогресс загрузки файла. Никакого отношения к "фоновости" это не имеет.

Неактивен

#8 2013.07.10 13:28

alibek_kz
Участник
Зарегистрирован: 2013.07.10
Сообщений: 26
Карма: 0
Профиль

Re: как на php сделать фоновую закачку файла

ну тогда как сделать так как в 6 посте?

Неактивен

#9 2013.07.10 13:57

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: как на php сделать фоновую закачку файла

как во 2 посте.

Неактивен

#10 2013.07.10 19:23

alibek_kz
Участник
Зарегистрирован: 2013.07.10
Сообщений: 26
Карма: 0
Профиль

Re: как на php сделать фоновую закачку файла

ну тогда через вед не работает.что будет ли работат если я напишу ignore_user_abort

Неактивен

#11 2013.07.10 20:02

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: как на php сделать фоновую закачку файла

какой еще "вед"?

Неактивен

#12 2013.07.10 21:06

alibek_kz
Участник
Зарегистрирован: 2013.07.10
Сообщений: 26
Карма: 0
Профиль

Re: как на php сделать фоновую закачку файла

вед крон незнает когда пользаватель заходить

Неактивен

#13 2013.07.11 00:42

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: как на php сделать фоновую закачку файла

крон запускай каждую минуту, например.
сгребай в массив ссылки из базы. ставь в бд отметку что файлы в процессе скачивания (чтобы новый крон процесс не взял эти ссылки).
скачивай.
а пользователю выдаешь инфу из бд о состоянии его ссылки.

Неактивен

#14 2013.07.11 10:25

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: как на php сделать фоновую закачку файла

а нагрузки не будет если каждую минуту запускать?

Неактивен

#15 2013.07.11 10:57

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: как на php сделать фоновую закачку файла

POFIGISST, ну можешь не запускать.

Неактивен

#16 2013.07.11 15:17

alibek_kz
Участник
Зарегистрирован: 2013.07.10
Сообщений: 26
Карма: 0
Профиль

Re: как на php сделать фоновую закачку файла

а как на javascript e реализовать?

Неактивен

#17 2013.07.11 15:29

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: как на php сделать фоновую закачку файла

Неактивен

#18 2013.07.17 11:39

Akdmeh
Участник
Откуда: Киев и рядом;)
Зарегистрирован: 2008.11.30
Сообщений: 257
Карма: 9
Профиль Веб-сайт

Re: как на php сделать фоновую закачку файла

Я еще делал так:
запускал файл через system(), и запускал wget в фоновом процессе (команда типа wget http://example.com/test.jpg &). Решение хорошее тем, что мы делаем задачу загрузки на плечи более предназначенной для этого программе, а не средствами php.
Правда, я не нашел лучшего решения узнать, загружен ли файл, чем средством файла-флага, то есть, я создаю файл с тем же именем и окончанием .finished, и затем проверяю с помощью php - если файл с данным окончанием существует, значит файл закачан.

Если интересует, могу скинуть части кода с моим решением.
У меня еще, правда, стояла задача по конвертации файла, но это уже мелочи.


Желание стать программистом из-за того, что вам нравляться компьютерные игры-это все равно, что желание стать гинекологом из-за того, что вам нравиться сексwink

Неактивен

#19 2013.07.22 22:03

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: как на php сделать фоновую закачку файла

Можно как вариант создать script_loader.php?url=url&path=Куда качать
и с другого script_process.php делать команду например через курл с минимальным таймаутом ожидания ответа. Скрипт послал http запрос на script_loader.php и при получении ошибки об таймауте продолжает выполнение генерации страницы. А вот процент можно определить filesize($path) * 100 / данные полученые из заголовков get_headers($url, true);

Неактивен

#20 2013.08.02 17:33

alibek_kz
Участник
Зарегистрирован: 2013.07.10
Сообщений: 26
Карма: 0
Профиль

Re: как на php сделать фоновую закачку файла

Akdmeh написал:

Я еще делал так:
запускал файл через system(), и запускал wget в фоновом процессе (команда типа wget http://example.com/test.jpg &). Решение хорошее тем, что мы делаем задачу загрузки на плечи более предназначенной для этого программе, а не средствами php.
Правда, я не нашел лучшего решения узнать, загружен ли файл, чем средством файла-флага, то есть, я создаю файл с тем же именем и окончанием .finished, и затем проверяю с помощью php - если файл с данным окончанием существует, значит файл закачан.

Если интересует, могу скинуть части кода с моим решением.
У меня еще, правда, стояла задача по конвертации файла, но это уже мелочи.

я знаю этот вариант и этот доступен только в вдс или дедике.а я на шаред хостинге

Неактивен

#21 2014.05.06 20:41

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: как на php сделать фоновую закачку файла

Как вариант выполнить системную команду wget http://... &
Правда сам не пробовал из php но думаю норм вариант

Неактивен

#22 2014.05.06 20:56

alibek_kz
Участник
Зарегистрирован: 2013.07.10
Сообщений: 26
Карма: 0
Профиль

Re: как на php сделать фоновую закачку файла

TLENS написал:

Как вариант выполнить системную команду wget http://... &
Правда сам не пробовал из php но думаю норм вариант

Да на этом и остался.
Но оно в шаред хостах не будет работать.

Неактивен

  • Главная
  • » PHP
  • » как на php сделать фоновую закачку файла

Дополнительно

forum.wapinet.ru

PunBB Mod v0.6.2
0.016 s