Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.14;
Скачать: CL | DM;

Вниз

Delphi, Cgi and MIME.   Найти похожие ветки 

 
Vasily5000   (2002-09-17 04:31) [0]

Есть форма отправки писем в html, пользователь задает параметры, выбирает файлы, кот шлет атачем. Небольшая трудность возникает на сервере при обработке переданных параметров, т.к. они кодируются в mime, то стандартными средствами их не получишь. Свой парсер писать лень. Может быть есть какой-нить универсальный компонент или класс для этого случая?

P.s.
пока я нашел только статью по этому поводу:
http://www.codenet.ru/progr/delphi/stat/dupload.php
а хотелось бы класс или компонент


 
Ghost. ©   (2002-09-17 09:32) [1]

Я чета не совсем понял тебе перекодировать из МИМЕ или пассер это разные вещи..


 
vasily5000   (2002-09-18 07:14) [2]

Уточнаю: пусть на сервер передается несколько параметров:
Кому отсылать письмо, тема,
текст письма,
ну и из-за чего все это - несколько прикрепленных файлов.
Теперь просто из Request тащить параметры по имени не получается, необходимо их вытаскивать из строки в mime формате.


 
vasily5000   (2002-09-20 06:32) [3]

Никто с этим не сталкивался что ли ?


 
panov ©   (2002-09-20 08:47) [4]

function Decode(Value: String):String;
var
i,L: Integer;
begin
Result := "";
L := 0;
for i := 1 to Length(Value) do
begin
if (Value[i]<>"%") and (Value[i]<>"+") and (L<1) then
begin
Result := Result + Value[i];
end
else
begin
if Value[i]="+" then Result := Result+" "
else if Value[i]="%" then
begin
L := 2;
if (i<Length(Value)-1) then
begin
Result := Result + Chr(StrToInt("$"+Copy(Value,i+1,2))); //Chr(HexToInt(Value[i+1])*16+HexToInt(Value[i+2]));
end;
end
else Dec(L);
end;
end;
end;

function ParamByName(inParams: String;Name: String): String;
var
ss,st: String;
k: Integer;
begin
Result := "";
ss := InParams;
while Length(ss)>0 do
begin
k := Pos("&",ss);
if k>0 then
begin
st := Copy(ss,1,k-1);
ss := Copy(ss,k+1,10000);
end
else
begin
st := ss;
ss := "";
end;
k := Pos("=",st);
if K>0 then
begin
if Name=Copy(st,1,k-1) then
begin
Result := Decode(Copy(st,k+1,6000));
end;
end;
end;

end;



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

Текущий архив: 2002.11.14;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
3-45683
Zloy
2002-10-26 16:02
2002.11.14
А как в таблицу парадокс, в поле график запихнуть jpeg.


4-46183
denvor
2002-10-03 01:03
2002.11.14
Как дождаться завершения запущенной программы?


4-46186
Pro-Z
2002-10-04 13:26
2002.11.14
HELP ME PLEASE


1-45892
@andrew
2002-11-05 21:24
2002.11.14
Есть ListBox Как зная координаты некой точки экрана...


14-46066
Фикус
2002-10-25 13:29
2002.11.14
Достал меня AVP!