Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.09.19;
Скачать: CL | DM;

Вниз

как сформировать и послать сообщение к PHP на сайте   Найти похожие ветки 

 
AlexeyM   (2004-07-11 15:31) [0]

Уважаемые Мастера!
Помогите решить такую проблему, на сайте есть скрипт

<FORM action="pager.php" method=post>
<input type="radio" name="TASCOM" value="radiobutton" checked>ТАСКОМ
<input type="radio" name="TASCOM" value="radiobutton" unchecked>Континенталь
<div class=small> <strong>Номер абонента</strong>

   <INPUT size="6" maxlength="6" name="pager" class="form">
    <INPUT class=form readOnly maxLength=3 size=2 value=400 name=dddText>
   <BR>
   <STRONG> Текст сообщения<BR>
   </STRONG>
<SCRIPT language=JavaScript>
<!--
maxText=400;
function funcMaxIn(form) {
if (form.msgtext.value.length>maxText)
form.msgtext.value=form.msgtext.value.substring(0,maxText);
else form.dddText.value=maxText - form.msgtext.value.length;
}
//-->
</SCRIPT>
    <TEXTAREA class="form" onkeydown=funcMaxIn(this.form) onkeyup=funcMaxIn(this.form) name=msgtext rows=7 cols=25></TEXTAREA>
   <INPUT style="WIDTH: 100px" class=form name=Submit type=submit value=Отправить>
   <INPUT style="WIDTH: 100px" class=form name=Reset type=reset value=Отменить>
 </div>
</FORM>

и мне надо программой отправлять сформированный запрос на этот pager.php помогите сделать это на Delphi


 
SergP ©   (2004-07-11 17:00) [1]


> и мне надо программой отправлять сформированный запрос на
> этот pager.php помогите сделать это на Delphi


А в чем проблема: В формировании запроса или в отправке его на сервер?


 
AlexeyM   (2004-07-11 19:19) [2]

и в том и другом


 
SergP ©   (2004-07-11 19:57) [3]

Значит насчет формирования запроса:
Сначала формируешь само тело запроса (postdata)
которое представляет собой такую строку:
"var1=Vasya&var2=Pupkin&var3=22"
Вобщем имя переменной = значение, затем & (амперсанд) и имя и значение следующей переменной, и т.д.

А вот формирование самого POST-запроса (заголовок + тело)

writedata:="POST /pager.php HTTP/1.0"+#13+#10
+"Host: www.vasyapupkin.ru"+#13+#10
+"Content-Type: application/x-www-form-urlencoded"+#13+#10
+"Content-Length: "+inttostr(length(postdata))+#13+#10+#13+#10+postdata;

Теперь конектишься к серваку c помощью TClientSocket, и когда он сконектится, отправляешь на сервак содержимое writedata


 
Slym ©   (2004-07-12 11:17) [4]

var Param:TStringList;
begin
 Param:=TStringList.Create;
 try
   Param.Values["TASCOM"]:="checked";
   Param.Values["pager"]:="12345";
   Param.Values["dddText"]:="12345";
   Param.Values["msgtext"]:="Hello world!";
   Param.Values["Submit"]:="&#206;&#242;&#239;&#240;&#224;&#226;&#232;&#242;&#252;";
   IdHTTP1.Post("www.server.ru/pager.php",Param);
 finally
   Param.Free;
 end;
end;


 
AlexeyM   (2004-07-12 16:31) [5]

Спасибо всем


 
SergP ©   (2004-07-12 17:59) [6]


> Slym ©   (12.07.04 11:17) [4]


Когда-то тоже пытался юзать INDY для отправки POST-запросов...
Но что-то не работало.
Как оказалось он в запросе не выдавал эту строчку:
Content-Type: application/x-www-form-urlencoded

После того я такие вещи пишу на TClientSocket  :-)))



Страницы: 1 вся ветка

Текущий архив: 2004.09.19;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.052 c
14-1093807996
Феликс
2004-08-29 23:33
2004.09.19
Респект нашим спортсменам.


1-1094047008
bloodman
2004-09-01 17:56
2004.09.19
Возможно ли передать в процедуру динамический массив?


1-1094387863
pavelgr
2004-09-05 16:37
2004.09.19
tmemo


3-1092917512
andrey__
2004-08-19 16:11
2004.09.19
insert в св.SQL TADOQuery не вставляет время


3-1093324233
Janbolat
2004-08-24 09:10
2004.09.19
Как поймать момент дублирования индекса?