Как создать загрузчик файлов с индикатором выполнения? - PullRequest
0 голосов
/ 06 января 2011

Итак, вот что я хочу вкратце:

  • Загрузчик файлов на основе PHP / Javascript / AJAX с индикатором выполнения, показывающим процент (например: 52%)и <div> что увеличивается в ширину по мере загрузки.

И в длинных:

Я хотел бы решение, написанное на PHP и Javascript (Не jQuery), я попробовал сам, но на стороне сервера я не могу получить размер файла загружаемого файла, поэтому не могу рассчитать оставшийся процент.

Может быть, есть способ сделать это нормально, но яне нашел четких путей.Я обнаружил множество патчей PHP, которые не сработали: \.

Наконец я попробовал Uber Uploader, который использует Perl, я установил правильно, но когда я пытаюсь загрузить файл, индикатор выполнения не отображается, никаких ошибок просто не работает: (.

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

Также естьявляются флэш-загрузчиками, такими как pixeline и swfupload , но, как я уже сказал, я хотел бы использовать PHP и Javascript.

Ответы [ 3 ]

1 голос
/ 06 января 2011

Вы должны использовать расширение UploadProgress вместе с запросом jQuery AJAX, который обновляет ваш индикатор выполнения в соответствии с ответом каждые x миллисекунды.

Вот ссылка на расширение: http://pecl.php.net/package/uploadprogress/

Кроме того, это также можно сделать с помощью APC .

0 голосов
/ 06 января 2011

PHP полностью обрабатывает загрузку файлов перед передачей управления обратно на страницу.

Это создает проблему.

Единственное реальное PHP-решение, о котором я знаю, включает использование APC, который добавляетподключиться к PHP, к которому вы можете получить доступ через второй PHP-скрипт через AJAX .

0 голосов
/ 06 января 2011

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

...