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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.10.2012, 18:59   #1
corsar1991
Пользователь
 
Регистрация: 14.01.2011
Сообщений: 14
Печаль Не получается авторизоваться на сайте ucoz

пробую подключиться вот так
Код:
procedure TForm1.Button1Click(Sender: TObject);
  var data:tstringlist;
  a,S:string;
begin
Reg := TRegExpr.Create; // Парсер
IdHTTP1.CookieManager:=IdCookieManager1;
IdHTTP1.AllowCookies:=true;
 IdHTTP1.HandleRedirects:=true;
 S:=IdHTTP1.get('http://contra-source.clan.su/');
   Reg.Expression := 'name="rnd" value="(.*?)"';
      if Reg.Exec(S) then a:=Reg.Match[1];
      memo1.Lines.Add(''+a);
 data:=tstringlist.create;
 data.Add('user='+edit1.text); // логин для авторизации
 data.Add('password='+edit2.text);  // пароль для авторизации
 data.Add('rem=1');
 data.Add('a=2');
 data.Add('ajax=1');
 data.Add('rnd='+a);
 data.Add('_tp_=xml');
  IdHTTP1.post('http://contra-source.clan.su/index/sub/',data);
   IdHTTP1.get('http://contra-source.clan.su/');
 if Pos('Выход,'http://contra-source.clan.su/')>0 then
 begin
   Memo1.Lines.Add('авторизовались');
  end
 else
  Memo1.Lines.Add('Не авторизовались ');

 Data.Free;

end;

но не получается.Помогите буду очень очень благодарен...

Последний раз редактировалось Stilet; 29.10.2012 в 19:13.
corsar1991 вне форума Ответить с цитированием
Старый 29.10.2012, 19:29   #2
Кольша
Далеко не
Участник клуба
 
Аватар для Кольша
 
Регистрация: 11.08.2011
Сообщений: 1,512
По умолчанию

подключите idcookiemanager и IdHTTP1 выставте все свойства отвечающие за куки
Кольша вне форума Ответить с цитированием
Старый 29.10.2012, 20:00   #3
corsar1991
Пользователь
 
Регистрация: 14.01.2011
Сообщений: 14
По умолчанию

вот так?

Код:
procedure TForm1.Button1Click(Sender: TObject);
  var data:tstringlist;
  a,S:string;
  CM    : TidCookieManager;
begin
Reg := TRegExpr.Create; // Парсер
IdHTTP1:=TIdHTTP.Create(Self);
  CM := TidCookieManager.Create(IdHTTP1);
IdHTTP1.CookieManager := CM;
IdHTTP1.AllowCookies:=true;
 IdHTTP1.HandleRedirects:=true;
  IdHTTP1.Request.Host:='contra-source.clan.su';
    IdHTTP1.Request.UserAgent:='Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.10) Gecko/2009042316 Firefox/3.0.10';
    IdHTTP1.Request.Accept:='text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8';
    IdHTTP1.Request.AcceptLanguage:='ru,en-us;q=0.7,en;q=0.3';
    IdHTTP1.Request.AcceptCharSet:='windows-1251,utf-8;q=0.7,*;q=0.7';
    IdHTTP1.Request.Referer:='http://contra-source.clan.su/';
 S:=IdHTTP1.get('http://contra-source.clan.su/');
   Reg.Expression := 'name="rnd" value="(.*?)"';
      if Reg.Exec(S) then a:=Reg.Match[1];
      memo1.Lines.Add(''+a);
 data:=tstringlist.create;
 data.Add('user='+edit1.text); // логин для авторизации
 data.Add('password='+edit2.text);  // пароль для авторизации
 data.Add('rem=1');
 data.Add('a=2');
 data.Add('ajax=1');
 data.Add('rnd='+a);
 data.Add('_tp_=xml');
  IdHTTP1.post('http://contra-source.clan.su/index/sub/',data);
   IdHTTP1.get('http://contra-source.clan.su/');
 if Pos('Выход','http://contra-source.clan.su/')>0 then
 begin
   Memo1.Lines.Add('авторизовались');
  end
 else
  Memo1.Lines.Add('Не авторизовались ');

 Data.Free;

end;
всеравно не получилось

Последний раз редактировалось corsar1991; 29.10.2012 в 20:12.
corsar1991 вне форума Ответить с цитированием
Старый 30.10.2012, 17:42   #4
aalekss83
Новичок
Джуниор
 
Регистрация: 26.10.2012
Сообщений: 1
По умолчанию

Значит не судьба вам явно)
aalekss83 вне форума Ответить с цитированием
Старый 31.10.2012, 00:02   #5
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

Весь код проверить не могу (нету аккаунта там, а регистрировать лень).
Но: if Pos('Выход','http://contra-source.clan.su/')>0 then
Это что такое?
Вы ищете слово 'Выход' в строке 'http://contra-source.clan.su/', а его там нету
Возможно, вы уже давно авторизовались.

Update
Код:
IdHTTP1.post('http://contra-source.clan.su/index/sub/',data);
IdHTTP1.get('http://contra-source.clan.su/');
Зачем?
Просто пишите:
Код:
s:=IdHTTP1.post('http://contra-source.clan.su/index/sub/',data);
if pos('Выход', s)>0...
И не забывайте о кодировке (в Дельфи cp1251, на сайте, скорее всего, UTF8).
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )

Последний раз редактировалось BDA; 31.10.2012 в 00:05.
BDA вне форума Ответить с цитированием
Старый 07.01.2014, 22:23   #6
shadowgm
Пользователь
 
Регистрация: 18.12.2010
Сообщений: 12
По умолчанию

ну че, получилось?
shadowgm вне форума Ответить с цитированием
Старый 07.01.2014, 22:37   #7
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

shadowgm, вряд ли corsar1991 ответит "Последняя активность: 08.07.2013 21:15".
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 08.01.2014, 01:16   #8
shadowgm
Пользователь
 
Регистрация: 18.12.2010
Сообщений: 12
По умолчанию

Принял)))))
shadowgm вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
авторизация на сайте ucoz kuzmich Работа с сетью в Delphi 11 18.01.2012 03:20
Авторизоваться на сайте ucoz через delphi xraser Общие вопросы Delphi 5 12.12.2010 17:47
Не могу авторизоваться на сайте(WinInet) Ozerich Общие вопросы C/C++ 0 16.08.2010 14:56
Как авторизоваться на сайте? AngelOfDeath Работа с сетью в Delphi 5 22.09.2008 12:35