Показать сообщение отдельно
  #1  
Старый 16.05.2010, 15:18
Аватар для Vayrus
Vayrus Vayrus вне форума
Исполняемый Ретровирус
 
Регистрация: 09.08.2008
Адрес: Umbrella Corporation
Сообщения: 743
Репутация: 1293
Лампочка D2010 - Indy10 - POST - вместо русского текста на форуме вопросики

Приветствую всех, возможно тема и избитая, но я практически все перепробовал, а результата нуль, логинюсь на сайте и создаю новую тему, а вместо заголовка темы и текста вопросики, подскажите как решить проблему

Код:
procedure TForm1.SpeedButton2Click(Sender: TObject);
var
  // S: String;
  // FORUM_NUMBER: String;
  data: TIdMultiPartFormDataStream;
  a,b:utf8string;
begin
a := 'Срочно сниму квартиру ';
b := 'Сниму квартиру...';
  // S :=
  IdHTTP1.Get('http://talks.mark-itt.ru/forummisc/post/122');
  // SID := idCookieManager1.cCookieCollection.
  // Memo1.Lines.Text := IdHTTP1.Response.RawHeaders.Text;
  // EXIT;
  //
  data := TIdMultiPartFormDataStream.Create;
  try
    data.AddFormField('sid', SID); // !!!!!!!!!!!!
    data.AddFormField('TopicSubject', a);
    // !!
    data.AddFormField('MsgIcon', '1');
    data.AddFormField('Message', b);
    // !!
    data.AddFormField('EmailNotification', 'yes');
    data.AddFormField('Signature', 'yes');
     //data.AddFormField('number', '122');//!!!!!!!!
     //data.AddFormField('forum', 'аренда жилья');//!!!!!!!!!!!!!!!
    data.AddFormField('action', 'posttopic');
    data.AddFormField('Submit', 'Submit New Topic');
    //
    IdHTTP1.Request.UserAgent :=
      'Mozilla/5.0 (Windows; U; Windows NT 6.1; ru-RU; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3 (.NET CLR 3.5.30729)';
    IdHTTP1.Request.AcceptLanguage := 'en-us,en;q=0.7,ru;q=0.3';
    IdHTTP1.Request.AcceptEncoding := 'gzip, deflate';
    IdHTTP1.Request.AcceptCharSet := 'windows-1251,utf-8;q=0.7,*;q=0.7';
    IdHTTP1.Request.Connection := 'keep-alive';
    // idHTTP1.Request.ContentType:='application/x-www-form-urlencoded';//!!!!!!!!!
    //
    Memo1.clear;
    Memo1.Lines.Text := IdHTTP1.Post(
      'http://talks.mark-itt.ru/forummisc/post/122', data);
    if (POS('continue...', Memo1.Lines.Text) <> 0) or
      (POS('Готово', Memo1.Lines.Text) <> 0) then // Готово продолжить...
      ShowMessage('done')
    else if POS('Ошибка', Memo1.Lines.Text) <> 0 then
      ShowMessage('error')
    else
      ShowMessage('another error');
  finally
    data.Free;
  end;
end;
Ответить с цитированием