Форум: "Сети";
Текущий архив: 2004.09.19;
Скачать: [xml.tar.bz2];
Внизкак сформировать и послать сообщение к 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"]:="Îòïðàâèòü";
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;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.026 c