2012-04-14 3 views
0

Мне нужно реализовать очередь загрузки файлов. Я планирую использовать wget для загрузки файлов.Загрузка файлов на php

Мой вопрос: как получить информацию от wget, когда файл был загружен?

Возможно ли установить обратный вызов или триггер на wget для этого?

Кроме того, вы можете рекомендовать некоторые другие вещи вместо wget, чтобы использовать его для загрузки файлов.

Заранее спасибо, Alex

ответ

1

Если у вас есть доступ к wget, то я думаю, вы можете выполнить Баш скрипты, я хотел бы предложить вам запустить Баш скрипт в фоновом режиме (тот, который вы выполнить из php)

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

Если бы я должен был сделать это, то я бы сделал, я создам скрипт bash, который запустит wget, и когда он закончит загрузку, он вызывает какое-либо действие, скажем, обновляет базу данных или запускает php-скрипт, который будет обновлять базу данных и установить статус файла для загрузки, или если вы не хотите использовать базы данных, вы можете заставить скрипт bash отправить электронное письмо пользователю, когда файл будет завершен, отправить по электронной почте ссылку на файл или что-то в этом роде.

Я не уверен, что полностью понял вашу идею, но я ответил, основываясь на том, что, как я думал, вы имели в виду.

в любом случае здесь является Баш скрипт пример, который вы можете использовать для загрузки файлов

#!/bin/bash 

wget $1 

SUBJECT="$1 is ready" 
EMAIL="$2" 

# Email text/message 
EMAILMESSAGE="/tmp/emailmessage.txt" 
echo "you can download your file using this link \n http://somesite/$1" > $EMAILMESSAGE 
/bin/mail -s "$SUBJECT" "$EMAIL" < $EMAILMESSAGE 

вы можете выполнить этот Баш скрипт из PHP, как это: shell_exec («файл_сценария ссылку по электронной почте &»);

+0

спасибо! это именно то, что мне нужно – alexanoid

Смежные вопросы