<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=123708&amp;view=findpost&amp;p=938477</guid>
        <pubDate>Mon, 05 Dec 2005 18:13:10 +0000</pubDate>
        <title>Как программно можно заполнить форму</title>
        <link>https://forum.sources.ru/index.php?showtopic=123708&amp;view=findpost&amp;p=938477</link>
        <description><![CDATA[Демо: Предлагаю добавить статью в FAQ:<br>
<br>
<strong class='tag-b'>Вопрос</strong>: <span class='tag-size' data-value='19' style='font-size:19pt;'>Как заполнить форму и отправить на сервер?</span><br>
<br>
<strong class='tag-b'>Для того, чтобы отправить форму на сервер, необходимо:</strong><br>
<br>
1. Найти форму в исходном тексте страницы.<br>
Для этога найти в исходном тексте страницы теги &lt;form&gt;...&lt;/form&gt;<br>
<br>
Например:<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&#60;form method=GET action=http://localhost/cgi-bin/mget?&#62;</div><div class="code_line">&#60;input type=text name=name1 value=&quot;имя&quot; size=&quot;40&quot; maxlength=&quot;20&quot;&#62;&#60;br&#62;</div><div class="code_line">&#60;input type=text name=name2 value=&quot;фамилия&quot; size=&quot;40&quot; maxlength=&quot;20&quot;&#62;&#60;br&#62;</div><div class="code_line">&#60;input type=submit&#62;</div><div class="code_line">&#60;/form&#62;</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script><br>
<br>
2. Определить метод, который используется для отправки данных. В указанном выше примере это &quot;GET&quot; - <strong class='tag-b'>form method=GET</strong><br>
<br>
3. Найти поля, которые необходимо заполнить.<br>
<br>
В примере это:<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&#60;input type=text name=name1 value=&quot;имя&quot; size=&quot;40&quot; maxlength=&quot;20&quot;&#62;&#60;br&#62;</div><div class="code_line">&#60;input type=text name=name2 value=&quot;фамилия&quot; size=&quot;40&quot; maxlength=&quot;20&quot;&#62;&#60;br&#62;</div></ol></div></div></div></div><br>
<br>
4. Используя компоненты для работы с протоколом TCP/IP, сформировать строку запроса.<br>
Для определенности пусть это будет компонент TIdHTTP из пакета Indy, входящий в стандартный набор компонент Delphi.<br>
--------------<br>
<br>
Сформируем строку для отправки на сервер для нашего примера:<br>
<br>
Пусть нам нужно отправить значениядля полей: имя=Vasya, фамилия=Pupkin.<br>
<br>
В этом случае запрос будет выглядеть так:<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp;s: String;</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp;s := IdHTTP1.Get(&#39;http://localhost/cgi-bin/mget?name1=Vasya&amp;name2=Pupkin&#39;)</div></ol></div></div></div></div><br>
--------------<br>
<br>
В случае, если форма использует метод <strong class='tag-b'>POST</strong>:<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&#60;form method=POST action=http://localhost/cgi-bin/mget?&#62;</div><div class="code_line">&#60;input type=text name=name1 value=&quot;имя&quot; size=&quot;40&quot; maxlength=&quot;20&quot;&#62;&#60;br&#62;</div><div class="code_line">&#60;input type=text name=name2 value=&quot;фамилия&quot; size=&quot;40&quot; maxlength=&quot;20&quot;&#62;&#60;br&#62;</div><div class="code_line">&#60;input type=submit&#62;</div><div class="code_line">&#60;/form&#62;</div></ol></div></div></div></div><br>
<br>
формируем запрос для отправки несколько по-другому:<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp;tL: TStringList;</div><div class="code_line">&nbsp;&nbsp;s: String;</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp;tL := TStringList.Create;</div><div class="code_line">&nbsp;&nbsp;tL.Add(&#39;name1=Vasya&#39;);</div><div class="code_line">&nbsp;&nbsp;tL.Add(&#39;name2=Pupkin&#39;);</div><div class="code_line">&nbsp;&nbsp;try</div><div class="code_line">&nbsp;&nbsp; &nbsp;s := IdHTTP1.Post(&#39;http://localhost/cgi-bin/mget&#39;,tL);</div><div class="code_line">&nbsp;&nbsp;finally</div><div class="code_line">&nbsp;&nbsp; &nbsp;tL.Free;</div><div class="code_line">&nbsp;&nbsp;end;</div></ol></div></div></div></div><br>
------------------<br>
Ключевые слова: TIdHTTP, GET, POST]]></description>
        <author>Демо</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=123708&amp;view=findpost&amp;p=932321</guid>
        <pubDate>Tue, 29 Nov 2005 18:23:40 +0000</pubDate>
        <title>Как программно можно заполнить форму</title>
        <link>https://forum.sources.ru/index.php?showtopic=123708&amp;view=findpost&amp;p=932321</link>
        <description><![CDATA[cha0s: Демо спасибо разобрался ;)]]></description>
        <author>cha0s</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=123708&amp;view=findpost&amp;p=931231</guid>
        <pubDate>Mon, 28 Nov 2005 20:43:06 +0000</pubDate>
        <title>Как программно можно заполнить форму</title>
        <link>https://forum.sources.ru/index.php?showtopic=123708&amp;view=findpost&amp;p=931231</link>
        <description><![CDATA[Демо: Вот направление:<br>
<a class='tag-url' href='http://forum.sources.ru/index.php?showtopic=123624&hl=302' target='_blank'>idHTTP просмотреть HTML код :-(((</a><br>
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1133169129&n=4]]></description>
        <author>Демо</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=123708&amp;view=findpost&amp;p=931219</guid>
        <pubDate>Mon, 28 Nov 2005 20:32:15 +0000</pubDate>
        <title>Как программно можно заполнить форму</title>
        <link>https://forum.sources.ru/index.php?showtopic=123708&amp;view=findpost&amp;p=931219</link>
        <description><![CDATA[cha0s: Спасибо с этим разобрался но появилась новая проблема при отсылке запроса серверу выскакивает исключение &#39;HTTP/1.0 302 Moved Temporarily&#39; как с этим быть? :D]]></description>
        <author>cha0s</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=123708&amp;view=findpost&amp;p=931158</guid>
        <pubDate>Mon, 28 Nov 2005 19:45:27 +0000</pubDate>
        <title>Как программно можно заполнить форму</title>
        <link>https://forum.sources.ru/index.php?showtopic=123708&amp;view=findpost&amp;p=931158</link>
        <description><![CDATA[Демо: Рассмотрим метод GET:<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&#60;form method=GET action=http://localhost/cgi-bin/mget?&#62;</div><div class="code_line">&#60;input type=text name=name1 value=&quot;имя&quot; size=&quot;40&quot; maxlength=&quot;20&quot;&#62;&#60;br&#62;</div><div class="code_line">&#60;input type=text name=name2 value=&quot;фамилия&quot; size=&quot;40&quot; maxlength=&quot;20&quot;&#62;&#60;br&#62;</div><div class="code_line">&#60;input type=submit&#62;</div><div class="code_line">&#60;/form&#62;</div></ol></div></div></div></div><br>
<br>
Если нам нужно отправить значения Vasya Pupkin, то<br>
в этом случае запрос будет выглядеть так:<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp;s: String;</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp;s := IdHTTP1.Get(&#39;http://localhost/cgi-bin/mget?name1=Vasya&amp;name2=Pupkin&#39;)</div></ol></div></div></div></div><br>
<br>
Для метода POST:<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&#60;form method=POST action=http://localhost/cgi-bin/mget?&#62;</div><div class="code_line">&#60;input type=text name=name1 value=&quot;имя&quot; size=&quot;40&quot; maxlength=&quot;20&quot;&#62;&#60;br&#62;</div><div class="code_line">&#60;input type=text name=name2 value=&quot;фамилия&quot; size=&quot;40&quot; maxlength=&quot;20&quot;&#62;&#60;br&#62;</div><div class="code_line">&#60;input type=submit&#62;</div><div class="code_line">&#60;/form&#62;</div></ol></div></div></div></div><br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp;tL: TStringList;</div><div class="code_line">&nbsp;&nbsp;s: String;</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp;tL := TStringList.Create;</div><div class="code_line">&nbsp;&nbsp;tL.Add(&#39;name1=Vasya&#39;);</div><div class="code_line">&nbsp;&nbsp;tL.Add(&#39;name2=Pupkin&#39;);</div><div class="code_line">&nbsp;&nbsp;try</div><div class="code_line">&nbsp;&nbsp; &nbsp;s := IdHTTP1.Post(&#39;http://localhost/cgi-bin/mget&#39;,tL);</div><div class="code_line">&nbsp;&nbsp;finally</div><div class="code_line">&nbsp;&nbsp; &nbsp;tL.Free;</div><div class="code_line">&nbsp;&nbsp;end;</div></ol></div></div></div></div>]]></description>
        <author>Демо</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=123708&amp;view=findpost&amp;p=931129</guid>
        <pubDate>Mon, 28 Nov 2005 19:29:34 +0000</pubDate>
        <title>Как программно можно заполнить форму</title>
        <link>https://forum.sources.ru/index.php?showtopic=123708&amp;view=findpost&amp;p=931129</link>
        <description><![CDATA[cha0s: не много разобрался, а как будет выгледить запрос если на форме метод post? есль проги которые показывают все запросы в сыром виде?]]></description>
        <author>cha0s</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=123708&amp;view=findpost&amp;p=931093</guid>
        <pubDate>Mon, 28 Nov 2005 19:06:51 +0000</pubDate>
        <title>Как программно можно заполнить форму</title>
        <link>https://forum.sources.ru/index.php?showtopic=123708&amp;view=findpost&amp;p=931093</link>
        <description><![CDATA[Демо: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=123708&view=findpost&p=931080'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>cha0s &#064; <time class="tag-quote__quoted-time" datetime="2005-11-28T18:53:32+00:00">28.11.05, 18:53</time></span><div class='quote '>Меня интересует вопрос как можно программно заполнить форму и содержымое отослать?</div></div><br>
<br>
Для начала нужно выясниить для себя, что это означает - &quot;заполнить форму и отослать&quot;. Для этого можно почитать материал здесь, например - http://postroika.ru/html/47step2.html<br>
<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=123708&view=findpost&p=931080'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>cha0s &#064; <time class="tag-quote__quoted-time" datetime="2005-11-28T18:53:32+00:00">28.11.05, 18:53</time></span><div class='quote '> какие нужны компоненты?</div></div><br>
<br>
Для отправки данных(запроса) на сервер можно воспользоваться любыми компонентами, основанными на сокетах. Проще всего - компонент  IdHTTP из комплекта Indy, инкапсулирующего работу по протоколу HTTP.<br>
<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=123708&view=findpost&p=931080'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>cha0s &#064; <time class="tag-quote__quoted-time" datetime="2005-11-28T18:53:32+00:00">28.11.05, 18:53</time></span><div class='quote '> и как это примерно делается?</div></div><br>
<br>
IdHttp1.Get(&lt;Адрес URL&gt;), например]]></description>
        <author>Демо</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=123708&amp;view=findpost&amp;p=931080</guid>
        <pubDate>Mon, 28 Nov 2005 18:53:32 +0000</pubDate>
        <title>Как программно можно заполнить форму</title>
        <link>https://forum.sources.ru/index.php?showtopic=123708&amp;view=findpost&amp;p=931080</link>
        <description><![CDATA[cha0s: Меня интересует вопрос как можно программно заполнить форму и содержымое отослать? какие нужны компоненты? и как это примерно делается? &lt;_&lt;]]></description>
        <author>cha0s</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      </channel>
      </rss>
	