Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: для новичков > Загрузка файла на сервер при помощи JavaScript


Автор: ZXVirus 24.10.2011, 10:26
Знаю что эта тема легко находится в сети поиском, но нигде подходящее решение для загрузки файла не нашел.
Дело в том, файл должен загружаться на устройство, где поднят простенький web-server - с поддержкой CGI. Т.е. поддержки PHP нет.
Использование JQuery возможно. Flash использовать не хочется, т.к. в устройстве очень мало памяти.
В принципе с использованием HTML5 (File API) загрузку файла я сделал, но что делать с браузерами не поддерживающими File API ?
Как раньше загружали файлы на сервера? 
Возможно ли загрузить файл без использования PHP ?
Если да, то возможно ли использовать CGI вместо PHP ?

Автор: magelan 24.10.2011, 11:17
Цитата

Как раньше загружали файлы на сервера? 

с помощью формы и любого приемника.
Цитата

Возможно ли загрузить файл без использования PHP ?

конечно. ПыхПых не первый язык который используется для веб.
Цитата

Если да, то возможно ли использовать CGI вместо PHP ? 

конечно.

Поделите мухи и котлеты.
На сервере работает любой серверный язык, список их бесконечен ANSI C, asp, Delphi, любой из семейства dotNet, perl, php, python, и т.д. Есть серверный JavaScript, но думаю вам это не надо, там будет гимороя больше.

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

Автор: ZXVirus 24.10.2011, 11:44
Серверного языка нет - объем памяти не позволяет.

Т.е. в качестве приемника я могу сделать CGI(бинарный исполняемый файл). Есть там CGI моего написания на C++(т.е. в него могу добавить всё, что мне заблагорассудится). Именно так изначально и хотел сделать, но не получилость и сделал на HTML5 File API, что меня не полностью успокаивает.

В качестве Web-сервера использую mini-httpd - он вроде как прием файлов не поддерживает, поэтому всю нагрузку по приему думаю надо переложить на CGI.
Так как CGI должен принимать файл ? Интересует механика приема, если можно...
Для приема файла я должен знать протокол обмена HTML ?
Т.е. CGI должен давать ответы на вопрос о желании клиента(браузера) передать файл ?
Если да, то где бы посмотреть как это делается ? Лучше в примерах на Delphi или Си -  не важно...

Автор: magelan 24.10.2011, 12:24
Как нет? а CGI по вашему что?

вот например как это делают:
http://www.rudeserver.com/cgiparser/tut_fileupload/tut1.html

Примеров на самом деле масса, гуглите "cgi file upload c++"

Автор: ZXVirus 24.10.2011, 12:58
Спасибо - теперь у меня есть надежда...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)