2013-11-22 2 views
1

Это удивительно трудно найти однозначный ответ на этот вопрос, я 95% уверен, что я пытаюсь достичь невозможно, но здесь идет:

Спереди:
У меня есть форма загрузки multipart/form-data. Пользователь выбирает файл, но должен быть зарегистрирован, прежде чем он сможет опубликовать форму. Пользователь может войти в систему через Twitter. Если он сделает это после выбора файла, из-за перенаправления на/из Twitter, вход в файл будет пустым.

Назад:
У меня есть PHP-скрипт с использованием массива $_FILES, чтобы переместить загруженный файл в конечный пункт назначения. (Решение моей проблемы состояло в том, чтобы сохранить файл во временную папку перед перенаправлением на Twitter, но в настоящее время я не могу это установить).

Проблема:
Я могу сохранить выбранный файл в localStorage с помощью API FileSystem (по крайней мере, в современных браузерах). Но я, очевидно, не могу вернуть это обратно во входной элемент. Теперь я в недоумении: есть ли способ получить этот файл из моего localStorage в массив PHP $ _FILES?

+1

Можете ли вы ввести логин перед отправкой? –

+2

Если вы действительно хотите пройти этот маршрут, вам нужно будет сохранить файл в качестве URI данных в локальном хранилище, затем вытащить его и отправить URI данных на ваш сервер или преобразовать URI данных в блок и отправить что. Тем не менее, localStorage пространство очень ограничено и, следовательно, вероятно, не является хорошим решением для вашей проблемы вообще. @FlashThunder имеет правильный ответ, ИМХО. –

+0

^^^ также если вы ДЕЙСТВИТЕЛЬНО хотите сделать это таким образом, вы всегда можете отправить форму и загрузить файл в папку temp (NOT localstorage) с помощью 'move_uploaded_file()', а затем после входа сохранить файл к его новому местоположению с помощью 'rename()' .... –

ответ

5

Войдите в Twitter через ajax. Таким образом, вы останетесь на своей текущей странице, и вход файла останется заполненным.

+0

Хм, это хорошо. У Twitter есть экран «Авторизовать приложение», который пользователь должен щелкнуть, но я, вероятно, могу что-то понять. Благодаря! – Phortuin

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