Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Интернет и сети
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 08.07.2010, 23:16
Аватар для maloy_ya
maloy_ya maloy_ya вне форума
Прохожий
 
Регистрация: 21.06.2010
Сообщения: 17
Репутация: 10
Печаль пишу прогу для создания аккаунтов на blog.ru

собственно говоря пишу прогу она еще дико недоработанная и нубская так что не пинайте а подскажите лучше вот текст:
Код:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Memo1: TMemo;
    Button1: TButton;
    Button2: TButton;
    Memo2: TMemo;
    Memo3: TMemo;
    Label1: TLabel;
    Label2: TLabel;
    Image1: TImage;
    Button3: TButton;
    IdHTTP1: TIdHTTP;
    regestration: TButton;
    Edit1: TEdit;
    Edit2: TEdit;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure regestrationClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  inet:string;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
memo1.Lines.LoadFromFile('d:\temp\delphi\Projects\blogru\acc.txt');
end;
procedure TForm1.Button2Click(Sender: TObject);
var
a,a1,a2: string;
i,s,etc:integer;
begin
 // For s:=0 to  Memo2.Lines.Count-1 do
  //   ShowMessage(IntToStr(Integer(@i)));
  etc:=0;
      for i:=0 to etc do
        begin
          a:= memo1.Lines[i];
          a1:= Copy(a,1,Pos(':',a)-1);
          a2:= copy (a,Pos(':',a)+1,20);
          memo2.Text:=a1;
          memo3.Text:=a2;
          memo2.Lines.SaveToFile('File1.txt');
          memo3.Lines.SaveToFile('File2.txt');
        end;
end;
procedure TForm1.Button3Click(Sender: TObject);
var FS:TFileStream;
begin
 //=IdHTTP1.Get('http://blog.ru/registration/step1?backurl=http%3A%2F%2Fblog.ru%2F');
 FS:=TFileStream.Create('captcha.jpg',FMCreate);
 IdHTTP1.Get('http://blog.ru/inc/captcha/image.php', FS);
 FS.Free;
 Image1.Picture.LoadFromFile('captcha.jpg');
end;

procedure TForm1.regestrationClick(Sender: TObject);
var
  Data:TStringList;
    begin
       Data:=TStringList.Create;
       Data.Add('user_data[nick]='+edit1.Text);
       Data.Add('user_data[email]='+memo2.Text);
       Data.Add('user_data[password]='+memo3.Text);
       Data.Add('user_data[password_confirm]='+memo3.Text);
       Data.Add('user_data[sex]=female');
       Data.Add('user_data[ code]='+Edit2.Text);
       Data.Add('user_data[agreement]=1');
       inet:=IdHTTP1.Post('http://blog.ru/registration/step1/submit', Data);
    end;
end.

компилятор не выдает никаких ошибок а вот при отправке пост запроса вываливаеться вот такая беда:



вот снифер:



подскажите плиз в чем беда??

Последний раз редактировалось maloy_ya, 09.07.2010 в 00:06.
Ответить с цитированием
  #2  
Старый 08.07.2010, 23:27
Аватар для PhoeniX
PhoeniX PhoeniX вне форума
Always hardcore!
 
Регистрация: 04.03.2009
Адрес: СПб
Сообщения: 3,239
Версия Delphi: GCC/FPC/FASM
Репутация: 62149
По умолчанию

1. Теги, *цензура*, где?
2. idHTTP1.HandleRedirects:=true;
__________________
Оставайтесь хорошими людьми...
VK id2634397, ds [at] phoenix [dot] dj
Ответить с цитированием
  #3  
Старый 09.07.2010, 00:02
Аватар для maloy_ya
maloy_ya maloy_ya вне форума
Прохожий
 
Регистрация: 21.06.2010
Сообщения: 17
Репутация: 10
По умолчанию

Цитата:
Сообщение от DJ PhoeniX
1. Теги, *цензура*, где?
2. idHTTP1.HandleRedirects:=true;

не оч понял что от меня требуеться редирект добавил та же борода!!можно поточнее выражаться я же говорил что я нуб в этом!!
Ответить с цитированием
  #4  
Старый 09.07.2010, 00:10
Аватар для PhoeniX
PhoeniX PhoeniX вне форума
Always hardcore!
 
Регистрация: 04.03.2009
Адрес: СПб
Сообщения: 3,239
Версия Delphi: GCC/FPC/FASM
Репутация: 62149
По умолчанию

Значит, криво "добавил"... эта ошибка вылезает при редиректах. Почитай хотя бы основы кодов состояния HTTP.

Выделяешь на форме idHTTP1, в обжект инспекторе ищешь свойство HandleRedirects и выбираешь значение True. Работать ДОЛЖНО.

П.С. Блин, либо тут 90% людей - третьеклассники, либо в школе перестали преподавать знаки препинания и орфографию... Пишите, ёмаё, грамотно!
__________________
Оставайтесь хорошими людьми...
VK id2634397, ds [at] phoenix [dot] dj

Последний раз редактировалось PhoeniX, 09.07.2010 в 00:15.
Ответить с цитированием
  #5  
Старый 09.07.2010, 00:34
Аватар для maloy_ya
maloy_ya maloy_ya вне форума
Прохожий
 
Регистрация: 21.06.2010
Сообщения: 17
Репутация: 10
По умолчанию

Цитата:
Сообщение от DJ PhoeniX
Значит, криво "добавил"... эта ошибка вылезает при редиректах. Почитай хотя бы основы кодов состояния HTTP.

Выделяешь на форме idHTTP1, в обжект инспекторе ищешь свойство HandleRedirects и выбираешь значение True. Работать ДОЛЖНО.

П.С. Блин, либо тут 90% людей - третьеклассники, либо в школе перестали преподавать знаки препинания и орфографию... Пишите, ёмаё, грамотно!

извиняюсь!!согласен работает но всеровно не регестрирует!!но теперь к сожалению вообще молчит!! снифер в status-line пишет HTTP/1.1 200 OK но залогиниться не дает!!

Последний раз редактировалось maloy_ya, 09.07.2010 в 00:56.
Ответить с цитированием
  #6  
Старый 09.07.2010, 00:52
Аватар для PhoeniX
PhoeniX PhoeniX вне форума
Always hardcore!
 
Регистрация: 04.03.2009
Адрес: СПб
Сообщения: 3,239
Версия Delphi: GCC/FPC/FASM
Репутация: 62149
По умолчанию

Так посмотри, что у тебя сваливается в результате запроса в переменную inet... возможно, там есть причина отказа в регистрации...
__________________
Оставайтесь хорошими людьми...
VK id2634397, ds [at] phoenix [dot] dj
Ответить с цитированием
  #7  
Старый 09.07.2010, 01:09
Аватар для maloy_ya
maloy_ya maloy_ya вне форума
Прохожий
 
Регистрация: 21.06.2010
Сообщения: 17
Репутация: 10
По умолчанию

Цитата:
Сообщение от DJ PhoeniX
Так посмотри, что у тебя сваливается в результате запроса в переменную inet... возможно, там есть причина отказа в регистрации...

по сути он мне вывалил страничку регистрации!! только я как не рылся не могу понять что там не так!!вы не поможете, если я вам её покажу??
Ответить с цитированием
  #8  
Старый 09.07.2010, 02:41
Аватар для maloy_ya
maloy_ya maloy_ya вне форума
Прохожий
 
Регистрация: 21.06.2010
Сообщения: 17
Репутация: 10
По умолчанию

люди добрые помогите!! вот то что я получаю в ответ!!
file3.txt
Ответить с цитированием
  #9  
Старый 09.07.2010, 02:44
Аватар для PhoeniX
PhoeniX PhoeniX вне форума
Always hardcore!
 
Регистрация: 04.03.2009
Адрес: СПб
Сообщения: 3,239
Версия Delphi: GCC/FPC/FASM
Репутация: 62149
По умолчанию

Код:
Data.Add('user_data[ code]='+Edit2.Text);
Пробел вызывает подозрения...
И где остальные поля запроса? В сниффере-то они есть, а добавления в запрос не вижу...
П.С. Люди ночью сонные, поэтому злые... а не добрые...
__________________
Оставайтесь хорошими людьми...
VK id2634397, ds [at] phoenix [dot] dj

Последний раз редактировалось PhoeniX, 09.07.2010 в 02:46.
Ответить с цитированием
  #10  
Старый 09.07.2010, 02:52
Аватар для maloy_ya
maloy_ya maloy_ya вне форума
Прохожий
 
Регистрация: 21.06.2010
Сообщения: 17
Репутация: 10
По умолчанию

Цитата:
Сообщение от DJ PhoeniX
Код:
Data.Add('user_data[ code]='+Edit2.Text);
Пробел вызывает подозрения...
И где остальные поля запроса? В сниффере-то они есть, а добавления в запрос не вижу...
П.С. Люди ночью сонные, поэтому злые... а не добрые...
в проге пробела нет, ошибочка вышла при посте походу!!
так они же пустые для чего их отправлять?? и если отправлять то как??

Последний раз редактировалось maloy_ya, 09.07.2010 в 02:55.
Ответить с цитированием
  #11  
Старый 09.07.2010, 02:57
Аватар для PhoeniX
PhoeniX PhoeniX вне форума
Always hardcore!
 
Регистрация: 04.03.2009
Адрес: СПб
Сообщения: 3,239
Версия Delphi: GCC/FPC/FASM
Репутация: 62149
По умолчанию

Скрипту нет разницы, пустое поле или заполненное - он проверяет его НАЛИЧИЕ. Если оно есть в сниффере - должно быть и в проге.
А добавлять "пустое" поле - как-то так:
Код:
Data.Add('username=');

И, кстати, сайт ставит кукизы для защиты - их тоже придётся добавлять.
__________________
Оставайтесь хорошими людьми...
VK id2634397, ds [at] phoenix [dot] dj

Последний раз редактировалось PhoeniX, 09.07.2010 в 03:01.
Ответить с цитированием
  #12  
Старый 09.07.2010, 03:04
Аватар для maloy_ya
maloy_ya maloy_ya вне форума
Прохожий
 
Регистрация: 21.06.2010
Сообщения: 17
Репутация: 10
По умолчанию

Цитата:
Сообщение от DJ PhoeniX
Скрипту нет разницы, пустое поле или заполненное - он проверяет его НАЛИЧИЕ. Если оно есть в сниффере - должно быть и в проге.
А добавлять "пустое" поле - как-то так:
Код:
Data.Add('username=');

И, кстати, сайт ставит кукизы для защиты - их тоже придётся добавлять.

вот с кукисами совсем озадачили!!откуда их выдирать и какие куда слать я не бум-бум
Ответить с цитированием
  #13  
Старый 09.07.2010, 03:07
Аватар для PhoeniX
PhoeniX PhoeniX вне форума
Always hardcore!
 
Регистрация: 04.03.2009
Адрес: СПб
Сообщения: 3,239
Версия Delphi: GCC/FPC/FASM
Репутация: 62149
По умолчанию

Я подозреваю, что их ставит страница с регистрацией... Перед непосредственно отсылкой запроса (или перед загрузкой капчи, что лучше) - просто ГЕТом забирай страницу регистрации - кукизы должны поставиться автоматом... Только IdCookieManager кинь на форму, и в IdHTTP его выставь...
__________________
Оставайтесь хорошими людьми...
VK id2634397, ds [at] phoenix [dot] dj
Ответить с цитированием
  #14  
Старый 09.07.2010, 03:24
Аватар для maloy_ya
maloy_ya maloy_ya вне форума
Прохожий
 
Регистрация: 21.06.2010
Сообщения: 17
Репутация: 10
По умолчанию

Цитата:
Сообщение от DJ PhoeniX
Я подозреваю, что их ставит страница с регистрацией... Перед непосредственно отсылкой запроса (или перед загрузкой капчи, что лучше) - просто ГЕТом забирай страницу регистрации - кукизы должны поставиться автоматом... Только IdCookieManager кинь на форму, и в IdHTTP его выставь...
он отказываеться просто забирать страницу пишет нужны параметры:
писал вот так:
IdHTTP1.Get('http://blog.ru/registration/step1',cokie);
пишет вот:
[Error] Unit1.pas(87): There is no overloaded version of 'Get' that can be called with these arguments
Ответить с цитированием
  #15  
Старый 09.07.2010, 03:31
Аватар для maloy_ya
maloy_ya maloy_ya вне форума
Прохожий
 
Регистрация: 21.06.2010
Сообщения: 17
Репутация: 10
По умолчанию

переделал запрос гет:
cokie:=IdHTTP1.Get('http://blog.ru/registration/step1');
но логиниться досих пор падло отказываеться
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 05:27.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter