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

Delphi Sources



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

 
 
Опции темы Поиск в этой теме Опции просмотра
  #3  
Старый 04.04.2014, 16:07
JeReK5542 JeReK5542 вне форума
Новичок
 
Регистрация: 18.11.2013
Сообщения: 61
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

вообще после ошибки показывает на ету строку:
Код:
for f := 0 to wb1.OleObject.Document.forms.Length - 1 do
зделал так, как вы написали но че дальше делать незнаю, я assembler толком незнаю

и вот еще:
Код:
while (str_mas<=str_mascount_get-1) do
begin
if (str_mas<=str_mascount_get-1) then
begin
html_fs:=htmls(html_fs)+'<table cellspacing="0">';
html_fs:=htmls(html_fs)+'<tr>';
html_fs:=htmls(html_fs)+'<td width="10%" class="td_prd" style="border-top:0px;"><img src="'+vk_avatar[str_mas]+'"></img></td>';
html_fs:=htmls(html_fs)+'<td width="30%" class="td_prd" style="border-left:0px;border-top:0px;">'+vk_firstname[str_mas]+' '+vk_lastname[str_mas]+'</td>';
html_fs:=htmls(html_fs)+'<td width="7%" class="td_prd" style="border-left:0px;border-top:0px;">'+vk_online_text+'</td>';
html_fs:=htmls(html_fs)+'<td class="td_prd" style="border-left:0px;border-top:0px;"><form action="" method="POST"><input type="hidden" name="vk_page_userid" value="'+vk_userid[str_mas]+'"><input type="submit" name="vk_page_userid_submit" value="Submit"></form></td>';
html_fs:=htmls(html_fs)+'</tr>';
html_fs:=htmls(html_fs)+'</table>';
str_mas:=str_mas+1;
end;
end;
ето выводит информацию о ВК пользователях в webbrowser1
Код HTML:
<input type="hidden" name="vk_page_userid" value="'+vk_userid[str_mas]+'">
- вот передаеться id, но когда наживаю на кнопку выбраного пользователя
Код HTML:
<input type="submit" name="vk_page_userid_submit" value="Submit">
webbrowser выводит с начала до конца все id, тоисть vk_page_userid, а не тот, который я выбрал.

и вот если изменить код:
Код:
procedure TForm2.wb1BeforeNavigate2(Sender: TObject;
  const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
  Headers: OleVariant; var Cancel: WordBool);
var
  f, i: integer;
  res_post: string;
begin
for f := 0 to wb1.OleObject.Document.forms.Length - 1 do
    begin
      for i := 0 to wb1.OleObject.Document.forms.Item(f).elements.Length - 1 do
            if wb1.OleObject.Document.forms.Item(f).elements.item(i).name = 'vk_page_userid'
              then
                res_post:=wb1.OleObject.Document.forms.Item(f).elements.item(i).value;
                edt1.Text:=res_post;
                stbsht5.PageControl.ActivePageIndex:=0;
                Get_MyPageInfo(edt1.Text);
    end;
end;
на такой вот:
Код:
procedure TForm2.WebBrowser1NavigateComplete2(Sender: TObject;
  const pDisp: IDispatch; var URL: OleVariant);
var
  f, i: integer;
  res_post: string;
begin
for f := 0 to wb1.OleObject.Document.forms.Length - 1 do
    begin
      for i := 0 to wb1.OleObject.Document.forms.Item(f).elements.Length - 1 do
            if wb1.OleObject.Document.forms.Item(f).elements.item(i).name = 'vk_page_userid'
              then
                res_post:=wb1.OleObject.Document.forms.Item(f).elements.item(i).value;
                edt1.Text:=res_post;
                stbsht5.PageControl.ActivePageIndex:=0;
                Get_MyPageInfo(edt1.Text);
    end;
end;
то все запускается без "Access violation", но значения "vk_page_userid" получаю все без нажатия кнопки

все решил проблему так:
Код:
procedure TForm2.WebBrowser1BeforeNavigate2(Sender: TObject;
  const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
  Headers: OleVariant; var Cancel: WordBool);
 var
    post_zapros:string;
    post_hran: TStringList;
    post_userid: string;
begin
  post_hran:=TStringList.Create;
  try
  if Length(PostData) > 10 then
    begin
      post_zapros:=Variant2Str(PostData);
      post_hran.Text:=URLDecode(post_zapros);
      post_userid:=Pars('vk_page_userid=', post_hran.Text, '&');
      stbsht5.PageControl.ActivePageIndex:=0;
      Get_MyPageInfo(post_userid);
    end;
  finally
  post_hran.Free;
  end;
end;

Последний раз редактировалось M.A.D.M.A.N., 04.04.2014 в 21:56.
Ответить с цитированием
 


Delphi Sources

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

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

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

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


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


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

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