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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.02.2013, 18:37   #1
megostudent
Форумчанин
 
Регистрация: 31.12.2010
Сообщений: 320
По умолчанию пост запрос не проходит

не проходит запрос, заполняю все поля данными специально сравниваю в данный момент они такие или нет, и голос не засчитывается.
Код:
procedure TForm1.Button2Click(Sender: TObject);
var
PostData:TStringList;
html : WideString;
Str:string;
begin
IdHTTP1.CookieManager:=IdCookiemanager1;
IdHTTP1.AllowCookies:=true;
IdHTTP1.HandleRedirects:=true;
try
PostData:=TStringList.Create;
//PostData.Clear;
PostData.Add('vote='+edit1.text);
PostData.Add('captcha['+edit2.text+']='+Edit3.Text);
html:=IdHTTP1.Post('http://pmis.kherson.ua/mis_herson_mis_tavrija_2013/',PostData);
PostData.Free;
except
on e:Exception do
//PostData.Free;
end;
end;
megostudent вне форума Ответить с цитированием
Старый 01.02.2013, 18:42   #2
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

И где проблема?
Человек_Борща вне форума Ответить с цитированием
Старый 01.02.2013, 18:47   #3
Кольша
Далеко не
Участник клуба
 
Аватар для Кольша
 
Регистрация: 11.08.2011
Сообщений: 1,512
По умолчанию

Код:
procedure TForm1.Button2Click(Sender: TObject);
var
PostData:TStringList;
html : WideString;
Str:string;
begin
IdHTTP1.CookieManager:=IdCookiemanager1;
IdHTTP1.AllowCookies:=true;
IdHTTP1.HandleRedirects:=false;
try
PostData:=TStringList.Create;
//PostData.Clear;
PostData.Add('vote='+edit1.text);
PostData.Add('captcha['+edit2.text+']='+Edit3.Text);
try
html:=IdHTTP1.Post('http://pmis.kherson.ua/mis_herson_mis_tavrija_2013/',PostData);
except
showmessage('may be reirect ?');//здесь может быть редирект который проходит мимо и т.д.
end;
PostData.Free;
except
on e:Exception do
//PostData.Free;
end;
end;
Кольша вне форума Ответить с цитированием
Старый 01.02.2013, 19:27   #4
megostudent
Форумчанин
 
Регистрация: 31.12.2010
Сообщений: 320
По умолчанию

нету редиректа
megostudent вне форума Ответить с цитированием
Старый 01.02.2013, 20:40   #5
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

и проблемы тоже нету. Вы забыли написать в чем проблема. Если с сайтом - то это ваша проблема, внимательнее к деталям...
Человек_Борща вне форума Ответить с цитированием
Старый 01.02.2013, 21:14   #6
Pearl777
Форумчанин
 
Регистрация: 04.01.2013
Сообщений: 171
По умолчанию

Что показывает сниффер?
Pearl777 вне форума Ответить с цитированием
Старый 01.02.2013, 21:15   #7
megostudent
Форумчанин
 
Регистрация: 31.12.2010
Сообщений: 320
По умолчанию

после отправки должен засчитываться голос, а этого не происходит( ну думаю проблема скорее не в сайте, а в том что я не знаю какие у низ хам защитки стоят, чтобы их обойти
megostudent вне форума Ответить с цитированием
Старый 01.02.2013, 21:19   #8
Pearl777
Форумчанин
 
Регистрация: 04.01.2013
Сообщений: 171
По умолчанию

Выложите код программы, так как проблема скорее всего скрывает глубже.
Pearl777 вне форума Ответить с цитированием
Старый 02.02.2013, 16:59   #9
megostudent
Форумчанин
 
Регистрация: 31.12.2010
Сообщений: 320
По умолчанию

Вложение 57508
Код:
unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, IdBaseComponent,
  IdComponent, IdTCPConnection, IdTCPClient, IdHTTP, Vcl.ExtCtrls, jpeg,
  IdCookieManager;

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Memo1: TMemo;
    Button1: TButton;
    IdHTTP1: TIdHTTP;
    Label1: TLabel;
    Label2: TLabel;
    Edit2: TEdit;
    Memo2: TMemo;
    Label3: TLabel;
    Image1: TImage;
    Edit3: TEdit;
    Button2: TButton;
    IdCookieManager1: TIdCookieManager;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

function FindID(strB,strE,str:string):string;
var
  b,e:integer;
begin
  b:=pos(strb,str)+Length(strb);
  e:=pos(strE,str);
  if (b=Length(strb))or(e=0) then
    Result:=''
  else
    Result:=copy(str,b,e-b);
end;

{function Pars(T_, ForS, _T: string): string;
var
  a, b: integer;
begin
  Result := '';
  if (T_ = '') or (ForS = '') or (_T = '') then
    Exit;
  a := Pos(T_, ForS);
  if a = 0 then
    Exit
  else
    a := a + Length(T_);
  ForS := Copy(ForS, a, Length(ForS) - a + 1);
  b := Pos(_T, ForS);
  if b > 0 then
    Result := Copy(ForS, 1, b - 1);
end;}

procedure TForm1.Button1Click(Sender: TObject);
var
i: integer;
MS:TMemoryStream;
pic: TJPEGImage;
begin
memo1.Clear;
memo1.lines.Text:= IdHttp1.Get('http://pmis.kherson.ua/mis_herson_mis_tavrija_2013/');
//edit1.Text:=(Pars('value="sZngqa5lop2nn5hfZWeZlqqd4KqunNeYrdnMk5eVzt0%3D" /> <img style="display:inline-block;vertical-align:middle;" src="/ajax/captcha.php?hash=',memo1.text,'"'));
for i:=0 to Memo1.Lines.Count-1 do
    begin
      if AnsiPos('№15 Змага Любовь', Memo1.Lines[i])<>0 then
        begin
          label1.Caption:=IntToStr(i);
          break;
        end;
    end;
label2.Caption:=Memo1.Lines[i+12];
edit1.Text:=FindID('value="','" />', label2.Caption);
label3.Caption:=Memo1.Lines[i+14];
edit2.Text:=FindID('src="/ajax/captcha.php?hash=','" width', label3.Caption);
//edit1.Text:=copy(label2.Caption, pos('hash=', label2.Caption), 23);
//edit2.Text:=FindID('src="/ajax/captcha.php?hash=>','"',IdHTTP1.Get('http://pmis.kherson.ua/mis_herson_mis_tavrija_2013/'));
//edit2.Text:=FindID('hash=','"', label2.Caption);

MS:=TMemoryStream.Create;
pic:= TJPEGImage.create;
idHTTP1.Get('http://pmis.kherson.ua/ajax/captcha.php?hash='+edit2.Text, MS);
MS.Position:=0;
pic.LoadFromStream(MS);
Image1.Picture.Assign(pic);
MS.Free;
pic.Free;
end;

procedure TForm1.Button2Click(Sender: TObject);
var
PostData:TStringList;
html : String;
//Str:string;
begin
IdHTTP1.CookieManager:=IdCookiemanager1;
IdHTTP1.AllowCookies:=false;
IdHTTP1.HandleRedirects:=false;
try
PostData:=TStringList.Create;
//PostData.Clear;
PostData.Add('vote='+edit1.text);
PostData.Add('captcha['+edit2.text+']='+Edit3.Text);
html:=IdHTTP1.Post('http://pmis.kherson.ua/mis_herson_mis_tavrija_2013/',PostData);
PostData.Free;
except
on e:Exception do
//PostData.Free;
end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
memo1.Clear;
memo2.Clear;
end;

end.

Последний раз редактировалось megostudent; 02.02.2013 в 17:20.
megostudent вне форума Ответить с цитированием
Старый 02.02.2013, 22:08   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
я не знаю какие у низ хам защитки стоят, чтобы их обойти
Воть воть. Что сниффер то показывает?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
пост запрос) zipo666 Общие вопросы C/C++ 0 09.08.2012 20:13
не могу сделать правильный пост запрос на winsock cable Работа с сетью в Delphi 0 10.07.2010 18:01
Изменить пост запрос TWebBrowser J-Max Работа с сетью в Delphi 1 23.02.2010 10:55
не проходит пост - запрос.... Kitt Работа с сетью в Delphi 4 13.05.2008 20:38