Недавно добавленные исходники

•  DeLiKaTeS Tetris (Тетрис)  347

•  TDictionary Custom Sort  3 491

•  Fast Watermark Sources  3 236

•  3D Designer  5 002

•  Sik Screen Capture  3 490

•  Patch Maker  3 695

•  Айболит (remote control)  3 895

•  ListBox Drag & Drop  3 158

•  Доска для игры Реверси  82 865

•  Графические эффекты  4 096

•  Рисование по маске  3 389

•  Перетаскивание изображений  2 763

•  Canvas Drawing  2 913

•  Рисование Луны  2 719

•  Поворот изображения  2 333

•  Рисование стержней  2 224

•  Paint on Shape  1 625

•  Генератор кроссвордов  2 306

•  Головоломка Paletto  1 822

•  Теорема Монжа об окружностях  2 326

•  Пазл Numbrix  1 717

•  Заборы и коммивояжеры  2 091

•  Игра HIP  1 313

•  Игра Go (Го)  1 261

•  Симулятор лифта  1 508

•  Программа укладки плитки  1 257

•  Генератор лабиринта  1 580

•  Проверка числового ввода  1 400

•  HEX View  1 534

•  Физический маятник  1 385

 
скрыть


Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Delphi Sources

Как получить POST данные



Автор: Craig Foley

Реальность, переходящая в виртуальность: Посмотрел порно сайт и заразил компьютер вирусом.

Если данные передаются в формате 'animal=cat&color=brown' и т.д., то попробуйте использовать следующий код:


procedure TDBModule.Navigate(stURL, stPostData: String; var wbWebBrowser: TWebBrowser);
var
  vWebAddr, vPostData, vFlags, vFrame, vHeaders: OleVariant;
  iLoop: Integer;
begin
  {Are we posting data to this Url?}
  if Length(stPostData)> 0 then
  begin
    {Require this header information if there is stPostData.}
    vHeaders:= 'Content-Type: application/x-www-form-urlencoded'+ #10#13#0;
    {Set the variant type for the vPostData.}
    vPostData:= VarArrayCreate([0, Length(stPostData)], varByte);
    for iLoop := 0 to Length(stPostData)- 1 do    // Iterate
    begin
      vPostData[iLoop]:= Ord(stPostData[iLoop+ 1]);
    end;    // for
    {Final terminating Character.}
    vPostData[Length(stPostData)]:= 0;
    {Set the type of Variant, cast}
    TVarData(vPostData).vType:= varArray;
  end;
  {And the other stuff.}
  vWebAddr:= stURL;
  {Make the call Rex.}
  wbWebBrowser.Navigate2(vWebAddr, vFlags, vFrame, vPostData, vHeaders);
end;  {End of Navigate procedure.}

Автор: Hans Gulo

А это другой способ:


procedure TForm1.SubmitPostForm;
var
  strPostData: string;
  Data: Pointer;
  URL, Flags, TargetFrameName, PostData, Headers: OleVariant;
begin
  {
  <!-- submit this html form: -->
  <form method="post" action="http://127.0.0.1/cgi-bin/register.pl">
  <input type="text" name="FIRSTNAME" value="Hans">
  <input type="text" name="LASTNAME" value="Gulo">
  <input type="text" name="NOTE" value="thats it">
  <input type="submit">
  </form>
  }
  strPostData := 'FIRSTNAME=Hans&LASTNAME=Gulo&NOTE=thats+it';
  PostData :=  VarArrayCreate([0, Length(strPostData) - 1], varByte);
  Data := VarArrayLock(PostData);
  try
    Move(strPostData[1], Data^, Length(strPostData));
  finally
    VarArrayUnlock(PostData);
  end;
  URL := 'http://127.0.0.1/cgi-bin/register.pl';
  Flags := EmptyParam;
  TargetFrameName := EmptyParam;
  Headers := EmptyParam; // TWebBrowser automatically replace
                         // this captions same values
  WebBrowser1.Navigate2(URL, Flags, TargetFrameName, PostData, Headers);
end;







Похожие по теме исходники

SiteReg LJPoster

NoNaMe Post Editor




Copyright © 2004-2024 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте