Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2008.02.03;
Скачать: [xml.tar.bz2];

Вниз

прием файла скриптом   Найти похожие ветки 

 
niKo   (2007-12-29 19:15) [0]

блин, не могу разобраться
<form action="http://..." method=post>
<input type=file name=names><input type=submit>
</FORM>
в скрипте Response.Content:=request.Files.Count; равно 0 почему-то
request.Files.Items[0].FileName - вообще ругается ))
как должно быть правильно


 
clickmaker ©   (2007-12-29 19:26) [1]

<form action="http://..." method="post" enctype="multipart/form-data">


 
niKo   (2007-12-29 19:35) [2]


> clickmaker ©   (29.12.07 19:26) [1]
>
> <form action="http://..." method="post" enctype="multipart/form-data">

пробовал, не катит


 
clickmaker ©   (2007-12-29 19:40) [3]


> [2] niKo   (29.12.07 19:35)

значит, чего-то неправильно указал
ты через input type="file" заливаешь?


 
niKo   (2007-12-29 19:46) [4]


> clickmaker ©   (29.12.07 19:40) [3]
>
>
> > [2] niKo   (29.12.07 19:35)
>
> значит, чего-то неправильно указал
> ты через input type="file" заливаешь?


ну вот форма
<form action="http" method="post" enctype="multipart/form-data">
<input type=file name=names><input type=submit></FORM>

в скрипте одна строчка, пытаюсь прочитать имя файла request.Files.Items[0].FileName сразу ругается


 
homm ©   (2007-12-29 20:03) [5]

> [0] niKo   (29.12.07 19:15)
> в скрипте Response.Content:=request.Files.Count;

Очень интересно, на каком таком языке скрипт.


 
clickmaker ©   (2007-12-29 20:04) [6]


> [5] homm ©   (29.12.07 20:03)

на php, конечно, не видно разве? )


 
niKo   (2007-12-29 20:08) [7]


> homm ©   (29.12.07 20:03) [5]
>
> > [0] niKo   (29.12.07 19:15)
> > в скрипте Response.Content:=request.Files.Count;
>
> Очень интересно, на каком таком языке скрипт.

пристаете к словам)

примерно так
procedure TWebModule1.WebModule1WebActionItem16Action(Sender: TObject;
 Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
var
 slContent:TStringList;
 i:integer;
begin
 slContent:=TStringList.Create;
 try
 i:=request.Files.Count;
 slContent.Add(IntToStr(i)+"<BR>");
 slContent.Add(request.Files.Items[0].FileName+"<BR>i");
 except
 sleep(1);
 end;

 Response.Content:=slContent.Text;
end;


 
homm ©   (2007-12-29 20:10) [8]

> [7] niKo   (29.12.07 20:08)
> пристаете к словам)

Умник? Я вообщето пытаюсь понять что тебе нужно. У кого проблемы у тебя или у меня?


 
homm ©   (2007-12-29 20:11) [9]

> [7] niKo   (29.12.07 20:08)
> WebActionItem16Action

Это что за компонент? И что за процедура?


 
homm ©   (2007-12-29 20:17) [10]

Млин, я вообще фигею, написал 2 строчки на html, непонятно где находящиеся и загадочное «request.Files.Count» непонятно к чему относящееся.
Человек, что у тебя, TWebBrowser, EmbededBrowser или что-то иное?  Хоть что-то объясни?


 
Kerk ©   (2007-12-29 20:23) [11]

Это похоже на обычный CGI на делфи


 
niKo   (2007-12-29 20:26) [12]

все по порядку
приложение WebServerApplication>CGI Stand-alone executable

вот форма (html) для загрузки файл на сервер
<form action="http//скрипт" method="post" enctype="multipart/form-data">
<input type=file name=names><input type=submit></FORM>

по щелчку отправить выполняется скрипт см. ниже

procedure TWebModule1.WebModule1WebActionItem16Action(Sender: TObject;
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
var
slContent:TStringList;
i:integer;
begin
slContent:=TStringList.Create;
try
i:=request.Files.Count;
slContent.Add(IntToStr(i)+"<BR>");
slContent.Add(request.Files.Items[0].FileName+"<BR>i");
except
sleep(1);
end;

Response.Content:=slContent.Text;
end;

в чем тут проблема


 
homm ©   (2007-12-29 20:36) [13]

> [12] niKo   (29.12.07 20:26)

Так то лучше.

Размер файла не превышает максимальный для сервера?


 
niKo   (2007-12-29 20:42) [14]


> homm ©   (29.12.07 20:36) [13]
> Размер файла не превышает максимальный для сервера?

сам файл для загрузки, пару строчек в .txt


 
niKo   (2007-12-29 20:59) [15]

только-что ради интереса загрузил через PHP, никаких проблем
что делать с загрузкой в Delphi даже не представляю


 
homm ©   (2007-12-29 21:40) [16]

Теперь я за лоха :)

Ни разу таки не работал с CGI из дельфи, пока застопарилось на том, что в WebDispatcher никакие события не выполняются. Где-то нужно указать его как диспачер по умолчанию?


 
niKo   (2007-12-29 22:15) [17]


> homm ©   (29.12.07 21:40) [16]
>
> Теперь я за лоха :)

мы вместе))
короче вот нарыл
> для получения параметров методом методом POST используется ContentFields
> для получения параметров методом методом GET используется QueryFields

З.Ы. теперь могу принимать .txt, Request.ContentFields.SaveToFile()
картинки и .exe не сохраняются)
еще никак не могу догнать, почему и нафига тогда Request.ContentFields.SaveToStream(Stream:TStream);
и самое главное, это даже бесит, нафига тут Request.Files с самого начала полез сюда и обломался


> Ни разу таки не работал с CGI из дельфи, пока застопарилось
> на том, что в WebDispatcher никакие события не выполняются.
>  Где-то нужно указать его как диспачер по умолчанию?

З.Ы. если правильно понял то у меня тоже тут была засада
по умолчанию Default:=true
или PathInfo задать и потом в конце пути к скрипту додавать /PathInfo
дальше ?параметры скрипта


 
antonn ©   (2007-12-29 22:17) [18]


> еще никак не могу догнать, почему и нафига тогда Request.
> ContentFields.SaveToStream(Stream:TStream);

можно сохранить в поток, дешифровать и записать на диск :)


 
homm ©   (2007-12-29 22:24) [19]

> [17] niKo   (29.12.07 22:15)
> картинки и .exe не сохраняются)

Потому что ContentFields типа TStrings, а в картинках нулевых симвлов дофига.


 
niKo   (2007-12-29 22:25) [20]


> можно сохранить в поток, дешифровать и записать на диск
> :)

тут тоже засада, пробывал :)
у меня вышло с потока точно не помню но где то, байт 100 с мелочью, даже не заглядывал что вышло но наверное только параметры
я вообще нифига тут не пойму, и нигде нет нормального описания,
все упирается в счетчики на Delphi)
у меня начинается истерика)


 
homm ©   (2007-12-29 22:43) [21]

> [20] niKo   (29.12.07 22:25)
> у меня начинается истерика)

Все нормально, я нашел способ :)

uses ReqMulti;

PS. Долбаная справка дельфи. Ни слова об этом нет.


 
niKo   (2007-12-29 23:02) [22]


> homm ©   (29.12.07 22:43) [21]
>
> Все нормально, я нашел способ :)
>
> uses ReqMulti;
>
> PS. Долбаная справка дельфи. Ни слова об этом нет.

полностью согласен, блин
заработало, спасиба)


 
niKo   (2007-12-29 23:09) [23]


> homm ©   (29.12.07 22:43) [21]

даже не знаю как еще выразить благодарность)
еще раз спасиба


 
Ketmar_   (2007-12-30 09:54) [24]

безумству храбрых, конечно, поём мы громко. только не понятно, нафига это ваять на дельфи, да ёще через webmodule. таки совершенно не ясно. я бы сказал, что это не лучший инструмент для подобных задач.


 
antonn ©   (2007-12-30 14:19) [25]

потому что ЦГИ быстрее обрабатывает бинырные файлы, например, чем ПХП...


 
Ketmar_   (2007-12-30 14:51) [26]

ясно. новый год уже в полный рост начался.

CGI — это протокол. соглашения такие. очень сложно протоколом что-либо обработать.

кстати, php использует именно CGI.


 
antonn ©   (2007-12-30 15:37) [27]

не буквоедствуй.
CGI (от англ. Common Gateway Interface — «общий интерфейс шлюза») — стандарт интерфейса, служащего для связи внешней программы с веб-сервером. Программу, которая работает по такому интерфейсу совместно с веб-сервером, принято называть шлюзом, хотя многие предпочитают названия скрипт (сценарий) или CGI-программа.
http://ru.wikipedia.org/wiki/CGI


 
homm ©   (2007-12-30 16:22) [28]

> [24] Ketmar_   (30.12.07 09:54)
> только не понятно, нафига это ваять на дельфи

Это можно и на чем удобно сваять, но я не уверен, что это — это все, что нужно было автору.


 
Ketmar_   (2007-12-30 17:10) [29]

> antonn ©   (30.12.07 15:37) [27]
> не буквоедствуй.
это вот ты Кэтмару пишешь? да-а-а, давно я здесь не был. %-)

> homm ©   (30.12.07 16:22) [28]
> но я не уверен, что это — это все, что нужно было автору.
дык вот я так завуалированно и спрашивал: «а может, оно не надо? может, вся задача решается более другими методами?»

зыж в моём посте полужирного не было.


 
homm ©   (2007-12-30 17:17) [30]

> [29] Ketmar_   (30.12.07 17:10)
> да-а-а, давно я здесь не был

Да, да, все уже соскучались :)


 
Anatoly Podgoretsky ©   (2007-12-30 17:18) [31]

> homm  (30.12.2007 17:17:30)  [30]

За это время метлы подорожалию


 
Ketmar_   (2007-12-30 17:32) [32]

> homm ©   (30.12.07 17:17) [30]
> Да, да, все уже соскучались :)

ну а шо делать? броффзером неудобно. а клиент у под Linux (почти дописаный) сыграл в ящик… %-(

> Anatoly Podgoretsky ©   (30.12.07 17:18) [31]
> За это время метлы подорожали

зато клиентов, смотрю, не убавилось…


 
Германн ©   (2007-12-30 17:38) [33]


> зато клиентов, смотрю, не убавилось…
>

Плодятся как тараканы.


 
Ketmar_   (2007-12-30 18:00) [34]

> Плодятся как тараканы.
дихлофосом, дихлофосом…


 
Anatoly Podgoretsky ©   (2007-12-30 19:44) [35]

> Германн  (30.12.2007 17:38:33)  [33]

Не тараканы не такие плодовитые.


 
Anatoly Podgoretsky ©   (2007-12-30 19:44) [36]

> Ketmar_  (30.12.2007 18:00:34)  [34]

и метлой


 
Ketmar_   (2007-12-30 20:57) [37]

> и метлой
ну да. после дихлофоса надо трупики вымести.


 
homm ©   (2007-12-30 21:32) [38]

> [37] Ketmar_   (30.12.07 20:57)

Я смотрю уже начался предметный разговор :)


 
Ketmar_   (2007-12-30 23:29) [39]

> Я смотрю уже начался предметный разговор :)
стараемся…



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2008.02.03;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.53 MB
Время: 0.045 c
15-1199046225
Petr V. Abramov
2007-12-30 23:23
2008.02.03
Automate BPA Server 7


15-1196332511
Tornado
2007-11-29 13:35
2008.02.03
Установка EhLib


2-1200037693
andreoman
2008-01-11 10:48
2008.02.03
путь к папке файла


1-1191152330
Farel
2007-09-30 15:38
2008.02.03
Отправка писем с помощью fastnet


2-1199569366
петрович07
2008-01-06 00:42
2008.02.03
Двумерный массив,задача





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский