Есть идея создания обычного прогресс-бара не устанавливая доп. модули и либы.
При выборе файла и нажатия на кнопку загрузить пользователь переходит на такой скрипт:
...
$tmp = $_FILES ['file']['tmp_name'];
exec ('/usr/bin/php5 /var/script.php' . $tmp . ' &',$out,$err);
move_uploaded_file ($tmp,'/var/www/upload_dir/' . $filename);
...
Прежде всего мы узнаем имя временного файла, передаем ее в отдельный скрипт который уже будет знать его временное имя, и при move_uploaded_file файл спокойно "однозадачно" загружается.
Так вот, временное имя файла мы запоминаем, и когда на клиентской стороне ajax-ом вызывается скрипт который спрашивает размер по временному имени типа мы должны отдавать его текущий filesize ('/tmp/phpV3Ki3').
Бегло наваял скрипт но при загрузке в директории /tmp пусто:
root@localhost:/tmp# ls -a
. .. .ICE-unix lighttpdcompress .X11-unix
В php.ini стоит upload_tmp_dir = '/tmp'
Куда пропал файл? PHP случайно не в оперативную память его льет?
Где-то же он должен сохранятся.