![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Загрузка файла с компа пользователя на сервер [D7, WinXP]
vishnia © (2007-06-18 14:25:00)С формой на сервер отправляется файл любого типа (doc, txt, html, rar, zip, и т.д.)
<form method="POST" name="Doc" action=" http://localhost/admin/mail/Scripts/SenderSystem.dll/document" enctype="multipart/form-data">
....
<input type="file" name="FileName" size="78" title="Выбрать сопроводительный документ">
.....
</form>
Вопрос: как его сохранить на сервере. На PHP это просто делается :
$fp1 = 'C:\\inetpub\\wwwroot\\REFERENT\\'.$dir.'\\'.$fn;
$res = move_uploaded_file($FileName,$fp1);
А на Delphi как? Я посмотрела, есть
Request.Files.Items[i].Stream
Как с этим работать и есть ли др.способ?
vishnia (2007-06-20 14:37:00) [1]Если кому-нибудь интересно, я сделала то, что нужно вот так:
var F:TStream;
F:=TFileStream.Create('C:\inetpub\index.'+ext,fmCreate or fmShareCompat);
// ext - расширение загружаемого файла
F.CopyFrom(Request.Files.Items[0].Stream, Request.Files.Items[0].Stream.Size);
F.Destroy;
Плохиш (2007-06-18 15:21:00) [2]В описании TAdapterFileField много чего есть...
vishnia (2007-06-18 15:12:00) [3]А нельзя ли поподробнее, pls?
Reindeer Moss Eater (2007-06-18 15:08:00) [4]можно и без инди.
читай заголовок, принимай данные, складывай в файл.
vishnia (2007-06-18 15:05:00) [5]Кроме того POST-запрос у меня и без Indy по-моему отлично вполняется, я ведь использую в форме enctype="multipart/form-data" и подключила ReqMulti для использования TMultipartContentParser. Вопрос в том, как сохранить файл, полученный с помощью этого запроса?
vishnia (2007-06-18 14:52:00) [6]А без использования Indy никак нельзя?
G_M_S (2007-06-18 14:41:00) [7]Indy - компонент TidHTTP.Он позволяет выполнить POST-запрос к серверу, который, собственно, и требуется в форме. Единственное - надо в заголовке указать, что контент - бинарный. Сам файлы не передавал таким образом, потому как это сделать - точно сказать не могу, читайте хэлп.