Ajax / jQuery поиск, если пользователь завершил загрузку - PullRequest
0 голосов
/ 19 февраля 2010

Вот что я пытаюсь сделать: я делаю специальный текстовый файл, содержащий тест. Этот тест уникален для пользователя, и я не хочу, чтобы мой сервер складывал все эти текстовые файлы.

Есть ли способ использовать Ajax / JavaScript / jQuery, чтобы узнать, завершил ли пользователь загрузку и получил ли он возвращаемое значение (1, если закончил), чтобы ответ можно было отправить обратно в файл PHP, и он можете удалить этот файл с сервера (как в режиме реального времени)?

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

Ответы [ 4 ]

1 голос
/ 19 февраля 2010

Зачем вам нужно хранить их в файле?Просто используйте скрипт PHP или такой, который создает тест и выводит его непосредственно пользователю.Вот как он будет удален после завершения загрузки.

0 голосов
/ 02 апреля 2012

У меня есть хорошее решение для вас, используя плагин jQuery File Download , который я создал. Он позволяет вам получить поведение при загрузке Ajax-файла (на самом деле это невозможно) с обратными вызовами Success и Failure. В двух словах, вы можете просто использовать функцию обратного вызова Success (которая указывает, что загрузка файла прошла успешно), чтобы выполнить запись Ajax обратно на сервер, чтобы удалить файл. Взгляните на сообщение в блоге для примера того, как использовать опцию обратного вызова Success или demo , которая использует эти обратные вызовы в контексте показа модальных сообщений для информирования пользователя о продолжается.

0 голосов
/ 22 февраля 2010

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

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

Если бы я мог MD5 загруженный файл с использованием JavaScript, я приветствую это, и это было бы взломанным решением проблемы, но как JavaScript получит доступ к корневому доступу к папке загрузки пользователя? Там есть проблемы с безопасностью, если я не ошибаюсь. Надеюсь, что это поможет немного округлить вопрос.

0 голосов
/ 19 февраля 2010

Если это важно, вы можете захотеть, чтобы пользователь вернулся на ваш сервер с хэшем загруженного файла. Если хеш совпадает, вы знаете две вещи:
1. Пользователь успешно загрузил файл
2. Теперь можно удалить файл

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...