Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.12.2012, 11:09   #1
iceman2112
Пользователь
 
Аватар для iceman2112
 
Регистрация: 04.05.2010
Сообщений: 19
По умолчанию Сохранение файла (Сохранить как...)

Есть массив.
Если пользователь нажимает кнопку "Сохранить", то это массив сохраняется в txt файл и сохраняется у него (как я понимаю лучший вариант, чтобы "Сохранить как..."
А если он выбирает файл (<input type="file"...>) и нажмет кнопку загрузить, то как мне это файл обработать, ведь сохранять его под каким то конкретным именем нельзя (как я понимаю), ведь другой пользователь может параллельно загружать файл под тем же именем
ВОПРОС: Я новичок, поэтому не прошу готовые скрипты и т.п., просто подскажите какой вариант для этих ситуации лучше и по возможности ссылку, где это можно посмотреть.
iceman2112 вне форума Ответить с цитированием
Старый 16.12.2012, 12:19   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
ведь другой пользователь может параллельно загружать файл под тем же именем
Но другой пользователь ведь получит копию файла на своем компе? Файл первого пользователя, скачанный в браузере останется у него.
Я не понимаю кое-чего: Ты передаешь файл для чего? Чтоб сохранить? - сохраняй средствами браузера. который помимо этого может вместо сохранения предложить просмотр. Если тебе нужно передавать некую информацию для обработки на стороне клиента, то файлом этого делать не стоит, или по крайней мере не стоит его сохранять.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.12.2012, 14:02   #3
iceman2112
Пользователь
 
Аватар для iceman2112
 
Регистрация: 04.05.2010
Сообщений: 19
По умолчанию

Смотри, пользователь видит массив чисел, и кнопку "Сохранить", нажимает сохранить. Я пока вижу вариант - это передаем массив серверу, сохраняем там, и отправляем клиенту на скачивание. Но ведь это же наверно неправильный вариант, ведь все данные уже есть на клиенте.
Разъясните, пожалуйста, вот этот момент.
iceman2112 вне форума Ответить с цитированием
Старый 16.12.2012, 14:47   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Сохранять нужно именно на клиенте?
Есть конечно FileAPI но я лично только на чтение его использовал, и не в курсе можно ли запись проводить. Исключение составляет только IE со своими JScript и VBScript используя СОМ компоненты винды - он может из скриптов с виндой все что угодно делать, если политика безопасности позволяет.
Я думаю что способ перепосылки на сервер не самый плохой.
Серверу кстати не обязательно вообще сохранять у себя файл. Он может прокрутить его в памяти и вернуть клиенту как application octet-stream, дабы указать браузеру что это нужно скачать а не отобразить.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.12.2012, 15:10   #5
iceman2112
Пользователь
 
Аватар для iceman2112
 
Регистрация: 04.05.2010
Сообщений: 19
По умолчанию

Вот есть массив, 1, 2, 3. Нужно чтобы он у пользователя сохранился *txt файлом.
Как это лучше и проще сделать?

Пользователь его видит на страничке

Последний раз редактировалось Stilet; 16.12.2012 в 15:58.
iceman2112 вне форума Ответить с цитированием
Старый 16.12.2012, 16:03   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Я бы передавал массив на сервер через window.locate('http://наш сервант/?Массив=1 2 3 4')
И пусть сервер формирует из него ответ с заголовком, в котором указано замечание скачивать :
ContentType: application/octet-stream
и ContentDisposition: attachment; filename=Тут имя файла
Опять таки нужно знать что сервер это сможет.
остальное все читай про FileAPI и WShell. Но я лично сколько не рыл ничего приятного не откопал
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.12.2012, 20:43   #7
MyLastHit
Очень суровый
Участник клуба
 
Аватар для MyLastHit
 
Регистрация: 17.12.2009
Сообщений: 1,988
По умолчанию

Все так, только location это свойство, а не метод.
Код:
window.location = 'http://наш сервант/?Массив=1 2 3 4'
Ненавижу быть как все, но люблю, чтобы все были как я.
MyLastHit вне форума Ответить с цитированием
Старый 16.12.2012, 20:46   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
только location это свойство, а не метод.
Упс... Редковасто его использую, потому и не запомнил.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
TStringList сохранить в конец файла, как? bakanaev Общие вопросы Delphi 15 31.10.2013 10:45
Как сохранить путь файла? Swatch Microsoft Office Access 2 21.03.2011 15:38
Как данные из одного файла Excel сохранить в другой? Papiruzzz Microsoft Office Excel 3 17.01.2011 13:14
Как сохранить сэмплы wav файла в массив? Evanation Общие вопросы .NET 0 14.01.2011 09:05
[Сохранение параметров в реестр] Как сохранить параметры цвета в реестр. ZARO Общие вопросы Delphi 3 12.03.2010 21:24