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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.07.2011, 01:20   #1
Stalkker247
Пользователь
 
Регистрация: 15.07.2011
Сообщений: 12
Стрелка Автопостинг новости на UCOZ

Здравствуйте. Пишу программу для автоматического добавления новостей на сайт. При нажатии кнопки "Добавить новость" сниффер выдает такого типа
Post Data:
Код:
-----------------------------78133059015735
Content-Disposition: form-data; name="title"

Nazvanie materiala
-----------------------------78133059015735
Content-Disposition: form-data; name="brief"

Kratkaya novost
-----------------------------78133059015735
Content-Disposition: form-data; name="message"

Polnaya novost
,
пробовал так
Код:
....
Data.Add('title=Nazvanie materiala');
Data.Add('brief=Kratkaya novost')
......
, не получается, помогите пожалуйста правильно отослать POST
Stalkker247 вне форума Ответить с цитированием
Старый 16.07.2011, 01:51   #2
exn
Пользователь
 
Регистрация: 06.02.2011
Сообщений: 51
По умолчанию

используй TIdMultiPartFormDataStream
exn вне форума Ответить с цитированием
Старый 16.07.2011, 02:02   #3
Stalkker247
Пользователь
 
Регистрация: 15.07.2011
Сообщений: 12
По умолчанию

Цитата:
Сообщение от exn Посмотреть сообщение
используй TIdMultiPartFormDataStream
пробовал и это:
Код:
   
    logparam.AddFormField('title','delphiTITLE');
    logparam.AddFormField('jkd498','1');
    logparam.AddFormField('jkd428','1');
    logparam.AddFormField('ocat','1');
    logparam.AddFormField('brief','DELPHIBRIEF');
    logparam.AddFormField('message','DelphiMESSAGE');
    logparam.Addformfield('tags','TEEEEEEEEEEEdfg');
    logparam.Addformfield('_wi','4');
    logparam.addformfield('_tp_','xml');
    logparam.addformfield('ssid','Scdaw_jV');
все равно новость не появляется
Stalkker247 вне форума Ответить с цитированием
Старый 16.07.2011, 02:08   #4
exn
Пользователь
 
Регистрация: 06.02.2011
Сообщений: 51
По умолчанию

ну значить что-то не правильно делаешь. про авторизацию не забыл, печеньки и т.д?
кто ищет, тот всегда найдет. )

Последний раз редактировалось exn; 16.07.2011 в 02:11.
exn вне форума Ответить с цитированием
Старый 16.07.2011, 02:11   #5
Stalkker247
Пользователь
 
Регистрация: 15.07.2011
Сообщений: 12
По умолчанию

Цитата:
Сообщение от exn Посмотреть сообщение
ну значить что-то не правильно делаешь. про авторизация не забыл, печеньки и т.д?
кто ищет, тот всегда найдет. )
хз, вот код:
Код:
procedure TForm1.Button5Click(Sender: TObject);
var
  logParam : TIdMultiPartFormDataStream;
  Data : Tmemorystream;
  CM : TidCookieManager;
  StrPage : String;

begin
    try
    logparam := TIdMultiPartFormDataStream.Create;
    Data:=tmemorystream.Create;
    CM := TidCookieManager.Create(idhttp1);
    idHTTP1.CookieManager:=cm;
    idhttp1.AllowCookies:=true;
    idhttp1.HandleRedirects:=true;

    idhttp1.Request.Host:='videogon.ucoz.ru';
    idhttp1.Request.UserAgent:='Mozilla/5.0 (Windows NT 6.1; rv:5.0) Gecko/20100101 Firefox/5.0';
    idhttp1.Request.Accept:='text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8';
    idhttp1.Request.AcceptLanguage:='ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3';
    idhttp1.Request.AcceptCharSet:='windows-1251,utf-8;q=0.7,*;q=0.7';
    idhttp1.Request.Referer:='http://videogon.ucoz.ru/load/0-0-0-0-1';
    idhttp1.Request.ContentDisposition:='form-data';
    idhttp1.Request.ContentType:='multipart/form-data; boundary=---------------------------23071514723674';


    logparam.addformfield('user',edit1.text);
    logparam.addformfield('password',edit2.Text);
    logparam.AddFormField('title','delphiTITLE');
    logparam.AddFormField('jkd498','1');
    logparam.AddFormField('jkd428','1');
    logparam.AddFormField('ocat','1');
    logparam.AddFormField('brief','DELPHIBRIEF');
    logparam.AddFormField('message','DelphiMESSAGE');
    logparam.Addformfield('tags','TEEEEEEEEEEEdfg');
    logparam.Addformfield('_wi','4');
    logparam.addformfield('_tp_','xml');
    logparam.addformfield('ssid','Scdaw_jV');

    idhttp1.Post('http://videogon.ucoz.ru/load/',logparam,data);
    data.SaveToFile('C:\Users\my\Desktop\1111.txt');
    finally
     logparam.Free;
     data.Free;
     cm.Free;
    end;

end;
Stalkker247 вне форума Ответить с цитированием
Старый 16.07.2011, 02:14   #6
exn
Пользователь
 
Регистрация: 06.02.2011
Сообщений: 51
По умолчанию

там что, возможно добавление новостей анонимно? врядли! где у тебя авторизация? нету.
и это лишнее
idhttp1.Request.ContentDisposition: ='form-data';
idhttp1.Request.ContentType:='multi part/form-data; boundary=---------------------------23071514723674';
exn вне форума Ответить с цитированием
Старый 16.07.2011, 02:22   #7
Stalkker247
Пользователь
 
Регистрация: 15.07.2011
Сообщений: 12
По умолчанию

Цитата:
Сообщение от exn Посмотреть сообщение
там что, возможно добавление новостей анонимно? врядли! где у тебя авторизация? нету.
и это лишнее
idhttp1.Request.ContentDisposition: ='form-data';
idhttp1.Request.ContentType:='multi part/form-data; boundary=---------------------------23071514723674';
Код:
    logparam.addformfield('user',edit1.text);
    logparam.addformfield('password',edit2.Text);
а это не авторизация??, или надо логинится на главной а потом как??
Stalkker247 вне форума Ответить с цитированием
Старый 16.07.2011, 02:24   #8
exn
Пользователь
 
Регистрация: 06.02.2011
Сообщений: 51
По умолчанию

я откуда знаю, что это там у тебя. нигде не видел, чтобы авторизация проходила одновременно с добавлением новости. )
exn вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Новости на сайте ilushka2306 PHP 2 04.05.2011 14:44
НОВОСТИ .... Noor Свободное общение 19 15.02.2010 12:39