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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.03.2011, 13:11   #1
cargo29
Форумчанин
 
Регистрация: 13.12.2010
Сообщений: 603
По умолчанию Причина ошибки

вот программа простой регер на сайте

но почему то не получается не подскажете где ошибка?

Код:
unit Unit33;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient,
  IdHTTP, StdCtrls, IdCookieManager, IdAntiFreezeBase, IdAntiFreeze, IdMultipartFormData;

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Edit2: TEdit;
    Button1: TButton;
    IdHTTP1: TIdHTTP;
    IdAntiFreeze1: TIdAntiFreeze;
    IdCookieManager1: TIdCookieManager;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
a,b,c,d:string;
list:Tstringlist;
i,n,t:integer;
begin
try
list:=TStringList.Create;
IdHTTP1.Request.UserAgent:='Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.7.62 Version/11.01';
b:=IdHTTP1.Get('http://dreamwar.ru/reg.php');
i:=Pos('nick&sid=', b)+13;
n:=Pos('&rand=', b);
t:=Pos('<input type="text" name="nick"',b);
c:=Copy(b,i, 32);
d:=Copy(b,n+10,7);
list.Add('nick='+Edit1.Text);
list.Add('pwd='+Edit2.Text);
list.Add('sid='+c);
list.Add('rang='+d);
list.Add('email=');
list.Add('sex=1');
list.Add('born=1');
list.Add('side=1');
list.Add('ref_id=');
list.Add('UIN=');
list.Add('pass=');
a:=IdHTTP1.Post('http://dreamwar.ru/reg.php', list);
if Pos('Вы успешно зарегистрированы!',a)<>0 then
ShowMessage('Зареген')
else
ShowMessage('Попробуй еще раз');
except
end;
list.Free;

end;

end.
cargo29 вне форума Ответить с цитированием
Старый 17.03.2011, 15:33   #2
cargo29
Форумчанин
 
Регистрация: 13.12.2010
Сообщений: 603
По умолчанию

есть тут кто нибудь?????
cargo29 вне форума Ответить с цитированием
Старый 18.03.2011, 21:51   #3
kangreon
Форумчанин
 
Аватар для kangreon
 
Регистрация: 03.04.2009
Сообщений: 305
По умолчанию

В uses поддключить StrUtils
Код:
function InputValue(src, Name: string): string;
var
  i: integer;
begin
  i := PosEx('"' + name + '"', src);
  i := PosEx('value', src, i);
  i := PosEx('"', src, i) + 1;
  Result := Copy(src, i, PosEx('"', src, i) - i);
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  http: TIdHTTP;
  url: string;
  s: string;
  sl: TStringList;
begin
  http := TIdHTTP.Create;
  http.Request.UserAgent := 'Opera/9.80';
  s := http.Get('http://dreamwar.ru/reg.php');
  sl := TStringList.Create;

  with sl do
  begin
    Add('sid=' + InputValue(s, 'sid'));
    Add('nick=uzzzha1ha');
    Add('pwd=123qwe');
    Add('email=uzzz1haha@mail.ru');
    Add('sex=1');
    add('born=1');
    add('side=1');
    add('ref_id=');
    add('UIN=');
    add('pass=');
    Add('rand=' + InputValue(s, 'rand'));
  end;
  http.Request.Referer := http.url.URI;
  Text := http.Post('http://dreamwar.ru/reg.php', sl);
  sl.Free;
  http.Free;
end;
kangreon вне форума Ответить с цитированием
Старый 18.03.2011, 22:37   #4
cargo29
Форумчанин
 
Регистрация: 13.12.2010
Сообщений: 603
По умолчанию

Цитата:
Сообщение от kangreon Посмотреть сообщение
В uses поддключить StrUtils
Код:
function InputValue(src, Name: string): string;
var
  i: integer;
begin
  i := PosEx('"' + name + '"', src);
  i := PosEx('value', src, i);
  i := PosEx('"', src, i) + 1;
  Result := Copy(src, i, PosEx('"', src, i) - i);
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  http: TIdHTTP;
  url: string;
  s: string;
  sl: TStringList;
begin
  http := TIdHTTP.Create;
  http.Request.UserAgent := 'Opera/9.80';
  s := http.Get('http://dreamwar.ru/reg.php');
  sl := TStringList.Create;

  with sl do
  begin
    Add('sid=' + InputValue(s, 'sid'));
    Add('nick=uzzzha1ha');
    Add('pwd=123qwe');
    Add('email=uzzz1haha@mail.ru');
    Add('sex=1');
    add('born=1');
    add('side=1');
    add('ref_id=');
    add('UIN=');
    add('pass=');
    Add('rand=' + InputValue(s, 'rand'));
  end;
  http.Request.Referer := http.url.URI;
  Text := http.Post('http://dreamwar.ru/reg.php', sl);
  sl.Free;
  http.Free;
end;
Спасибо не подскажешь что дает StrUtils
cargo29 вне форума Ответить с цитированием
Старый 19.03.2011, 19:34   #5
cargo29
Форумчанин
 
Регистрация: 13.12.2010
Сообщений: 603
По умолчанию

Код не работает (((
cargo29 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
в чём причина ошибки - mysql_num_rows(): supplied argument is not a valid vedro-compota PHP 6 23.09.2010 16:12
Причина ошибки Wa_sja Паскаль, Turbo Pascal, PascalABC.NET 11 05.09.2010 23:07
2 ошибки в макросе, в чем причина? robbe Microsoft Office Excel 4 15.02.2010 14:03
Вопрос про setcookie, не ясна причина ошибки. LuckyC0de PHP 1 14.12.2009 18:24
Подскажите в чём причина :( Cannibal Компьютерное железо 3 16.02.2009 23:27