Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.01.2011, 01:37   #1
F1shka
Заблокирован
 
Регистрация: 27.04.2009
Сообщений: 7
По умолчанию Цикл, и idhttp post

Здравствуйте администраторы, модераторы и мемберы данного форума. Сложилась проблема и даже не знаю как её решить. Задача программы которую пытался написать. в мемо1 загружается список сайтов. В мемо4 строковые данные (что то вроде логинов). Задача программы - переходить по заданным сайтам и депать запрос по строчно. Т.е. проверять существует ли такой логин или нет и если есть - копировать его в мемо2.
Код HTML:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, XPMan, StdCtrls, OleCtrls, SHDocVw, IdBaseComponent,
  IdComponent, IdTCPConnection, IdTCPClient, IdHTTP, WinInet;

type
  TForm1 = class(TForm)
    mmo1: TMemo;
    btn1: TButton;
    lbl1: TLabel;
    mmo2: TMemo;
    btn2: TButton;
    btn3: TButton;
    mmo3: TMemo;
    lbl2: TLabel;
    lbl3: TLabel;
    lbl4: TLabel;
    lbl5: TLabel;
    idhtp1: TIdHTTP;
    lbl6: TLabel;
    mmo4: TMemo;
    lbl7: TLabel;
    dlgSave1: TSaveDialog;
    btn4: TButton;
    btn5: TButton;
    dlgOpen1: TOpenDialog;
    lbl8: TLabel;
    procedure btn3Click(Sender: TObject);
    procedure btn1Click(Sender: TObject);
    procedure btn5Click(Sender: TObject);
    procedure btn4Click(Sender: TObject);
    procedure btn2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation
 function CheckUrl(url: string): boolean;
var
  hSession, hfile, hRequest: hInternet;
  dwindex, dwcodelen: dword;
  dwcode: array [1..20] of char;
  res: pchar;
begin
  if pos('http://', lowercase(url)) = 0 then
    url := 'http://'+url;
  Result := false;
  hSession := InternetOpen('InetURL:/1.0', INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);
  if assigned(hsession) then
  begin
    hfile := InternetOpenUrl(hsession, pchar(url), nil, 0, INTERNET_FLAG_RELOAD, 0);
    dwIndex := 0;
    dwCodeLen := 10;
    HttpQueryInfo(hfile, HTTP_QUERY_STATUS_CODE, @dwcode, dwcodeLen, dwIndex);
    res := pchar(@dwcode);
    result := (res = '200') or (res = '302');
    if assigned(hfile) then
      InternetCloseHandle(hfile);
    InternetCloseHandle(hsession);
  end;
end;
{$R *.dfm}



procedure TForm1.btn3Click(Sender: TObject);
begin
Close;
end;

procedure TForm1.btn1Click(Sender: TObject);
begin

  if not (CheckUrl('')) then /// трабла!

  begin

    MessageBox(0, 'Произошла ошибка!', 'Ошибка', MB_ICONERROR);


  end

  else

  begin

      Mmo3.Lines.Add(idHTP1.Get(''));/// Вот тут трабла

  end;

end;

procedure TForm1.btn5Click(Sender: TObject);
begin
mmo4.Lines.Clear;
end;

procedure TForm1.btn4Click(Sender: TObject);
begin
if dlgOpen1.Execute then
Mmo4.Lines.LoadFromFile(dlgOpen1.filename);
lbl8.caption:=inttostr(mmo4.lines.count);
end;

procedure TForm1.btn2Click(Sender: TObject);
begin
if dlgSave1.Execute then
mmo2.Lines.SaveToFile(dlgSave1.FileName);
end;

end.

Сайты вот что выдают
Код HTML:
<form method="POST">
Login: <input type="text" name="login">
<br>
<input type="submit" value="enter">
</form>
i<BR> i2 
Где i это проверяющийся логин с моей проги, а  i2 ответ от сервера, т.е. то что надо копировать.
У кого какие предложения есть по реализации данной проги? Сразу скажу, что скрипты на которых работают сайты индентичны, ошибок не должно возникать. Не могу понять как мне реализовать это. Извеняюсь что так "коряво" кожу и объясняюсь, приму любую помощь, советы, строчки кода.
F1shka вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с idhttp.post codermoder Работа с сетью в Delphi 14 12.11.2010 22:58
Проблемы с IdHTTP.Post() ! $T@LKER Работа с сетью в Delphi 30 03.09.2010 17:03
idHTTP post nix01d Работа с сетью в Delphi 7 06.07.2010 23:52
POST idHTTP Pasha_Sh Работа с сетью в Delphi 7 11.06.2010 09:00
idHTTP GET и POST запросы FAiver Работа с сетью в Delphi 64 15.05.2008 13:22