| |
Архив эхоконференции RU.PHP
- RU.PHP ------------------------------------------------------------- RU.PHP -
Msg : #5095 [1078]
От : Wlad Borodin 2:5020/400 10 декабря 03, 11:54
Кому : Slava Skorykh 10 декабря 03, 21:43
Тема : Re: эмуляция POST-запроса
-------------------------------------------------------------------------------
From: "Wlad Borodin"
Hапример, так:
// reqdata содержит передаваемые при помощи POST данные
$reqdata = array(
"id" => 134,
"submit" => "submitButton",
"message" => "bla bla bla"
);
$req = "";
foreach ($reqdata as $k => $v) {
if ($req == "") {
$req .= "&";
}
$req .= "$k=" . urlencode($v);
}
// Указать URI скрипта-обработчика вместо /mydir/script.php
$headers = "POST /mydir/script.php HTTP/1.0\r\n";
$headers .= "Content-Type: application/x-www-form-urlencoded\r\n";
$headers .= "Content-Length: " . strlen($req) . "\r\n\r\n";
$timeout = 20.0;
$targetdomain = 'mydomain.name';
$targetport = 80; // HTTP
$sh = fsockopen ($targetdomain, $targetport, $errno, $errstr, $timeout);
if (!$sh) {
// Ошибка, изучай содержимое $errno и $errstr
} else {
fputs ($sh, $header . $req);
$res = "";
while (!feof($sh)) {
$res .= fgets ($fp, 1024);
}
fclose($sh);
}
Теперь $res содержит то, что удалённый скрипт вернул в ответ.
Где-то так. Hаписано не бог весть как оптимально, но - дальше уже сам.
--- ifmail v.2.15dev5.1
* Origin: Alkar Teleport News Server (2:5020/400)
При переходе по баннеру - скидка 25% на первый месяц обслуживания!
 При переходе по баннеру - скидка 25% на первый месяц обслуживания!
|