Просмотр полной версии : Post фулдер.
-Hormold-
01.11.2007, 20:59
Люди, сделал фулдер на php.
Вот урл: http://www.kaliningrad.mts.ru/sendform_sms.htm
(Только Калининград)
Как правильно сделать запрос?
Вот что я сделал:
<?
Error_Reporting(E_ALL & ~E_NOTICE);
set_time_limit(0) or die('Unable to set time limit 0.');
$header="";
$line ="";
$hs=date('H');
$ms=date('i');
$yr=date('Y');
$mr=date('m');
$day=date('d');
$number="7911xxxxxxx";
$msg="Test!";
$timeout = 20;
$port = 80 ;
$qwerty="?To=".$number."&Msg=".$msg."&SMSHour=".$hs."&SMSMinute=".$ms."&SMSDay=".$day."&SMSMonth=".$mr."&SMSYear=".$yr;
echo $qwerty;
$host = "www.kaliningrad.mts.ru" ;
$header.="POST /smssend.htm".$qwerty." HTTP/1.0";
$header.="Host:".$host;
$header.="Accept-Language: ru-ru";
$header.="Accept: image/gif, image/x-xbitmap,image/jpeg, image/pjpeg, application/x-shockwave-flash,application/msword";
$header.="Pragma: no-cache";
$header .="Connection: Keep-Alive";
$header .="User-Agent: Mozilla/4.0 (compatible";
$header .="MSIE 6.0; Windows NT 5.1; MRA 4.6 (build 01425); .NET CLR 1.1.4322)";
$header .= "Referer: http://kaliningrad.mts.ru\r\n";
$header .= "Content-Type: multipart/form-data\r\n";
$header .= "Content-Length: 1024\r\n\r\n";
$fp = fsockopen($host, $port, $errno , $errstr, $timeout);
if(!$fp)
{
echo "$errstr ($errno) ";
}
else
{
fputs($fp, $header);
while (!feof($fp))
{
$line .= fgets($fp, 1024);
}
fclose($fp);
}
echo $line ;
?>
Вот:
18 строка:
$header.="POST $host/smssend.htm HTTP/1.0";
28
$header .= "Content-Length: ".strlen($qwerty)."\r\n\r\n"
.$qwerty;
Ну это я тока поверхностно прощелся, ща посмотрю еще
Может пригодться: http://forum.antichat.ru/thread22491.html
Обязательный параметр COOKIE,count="Количество символов сообщения", + лимит времени
-Hormold-
02.11.2007, 21:07
Неработает =\
Пожскажите нормальный вариант, вот запрос к серверу вытащил через Naviscope:
POST http://www.kaliningrad.mts.ru/smssend.htm HTTP/1.0
Accept: */*
Referer: http://www.kaliningrad.mts.ru/sendform_sms.htm
Accept-Language: en-au
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; MRA 4.7 (build 01670); Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; .NET CLR 2.0.50727; MEGAUPLOAD 1.0; .NET CLR 1.1.4322; MEGAUPLOAD 2.0)
Host: www.kaliningrad.mts.ru
Content-Length: 125
Proxy-Connection: Keep-Alive
Pragma: no-cache
Cookie: JSESSIONID=A61DF6CCCB8281AAC730AF1F752C38A0
To=7911*******&Msg=lol%27%F8%EE%E3%0D%0Aa-z%0D%0AA-Z+01-9&count=22&SMSHour=22&SMSMinute=53&SMSDay=02&SMSMonth=11&SMSYear=2007
vizard-06
03.11.2007, 09:59
так проще всего...
<?
$ch_autht = curl_init();
curl_setopt($ch_autht, CURLOPT_URL, "http://www.kaliningrad.mts.ru/smssend.htm");
curl_setopt($ch_autht, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch_autht, CURLOPT_COOKIEFILE, 'cookie.txt');
curl_setopt($ch_autht, CURLOPT_POST, 1);
curl_setopt($ch_autht, CURLOPT_POSTFIELDS, "To=7911*******&Msg=lol%27%F8%EE%E3%0D%0Aa-z%0D%0AA-Z+01-9&count=22&SMSHour=22&SMSMinute=53&SMSDay=02&SMSMonth=11&SMSYear=2007");
curl_setopt ($ch_autht, CURLOPT_RETURNTRANSFER, 1);
$ch_buf = curl_exec($ch_autht);
curl_close($ch_autht);
echo $ch_buf;
?>
2vizard-06
curl - есть далеко не на всех хостах.
ТС читай доки по http протоколу
http://www.codenet.ru/cat/WEB-Development/Internet-Protocols-and-Documents/HTTP/
другие найдёш в гугле.
vizard-06
04.11.2007, 09:44
ну вот пробовал сделать через сокеты , хз почему не пашет.... может кто то поправит, по идее правельно всё
<?
$line ="";
$port = 80 ;
$post="&To=78125436754&Msg=fdsfsdfs&count=8&SMSHour=11&SMSMinute=24&SMSDay=04&SMSMonth=11&SMSYear=2007&translit=yes";
$host = "www.kaliningrad.mts.ru";
$header = "POST /smssend.htm HTTP/1.0\r\n";
$header .= "User-Agent: Opera/9.10 (Windows NT 5.1; U; ru)";
$header .= "Accept: */*\r\n";
$header .= "Referer: http://www.kaliningrad.mts.ru/sendform_sms.htm\r\n";
$header .= "Content-Type: multipart/form-data\r\n";
$header .= "Host: www.kaliningrad.mts.ru\r\n";
$header .= "Proxy-Connection: Keep-Alive\r\n";
$header .= "Pragma: no-cache\r\n";
$header .= "Content-Length: ".strlen($post)."\r\n\r\n";
$header .= $post;
$fp = fsockopen($host, $port, $errno , $errstr, 3);
if(!$fp)
{
echo "$errstr ($errno) ";
}
else
{
fputs($fp, $header);
while (!feof($fp))
{
$line .= fgets($fp, 1024);
}
fclose($fp);
}
preg_match("/JSESSIONID\=(.*?)\;/i",$line,$pars);
print_r($pars);
echo '<br>';
$head = "POST /smssend.htm HTTP/1.0\r\n";
$head .= "User-Agent: Opera/9.10 (Windows NT 5.1; U; ru)";
$head .= "Accept: */*\r\n";
$head .= "Referer: http://www.kaliningrad.mts.ru/sendform_sms.htm\r\n";
$head .= "Content-Type: multipart/form-data\r\n";
$head .= "Host: www.kaliningrad.mts.ru\r\n";
$head .= "Proxy-Connection: Keep-Alive\r\n";
$head .= "Pragma: no-cache\r\n";
$head .= "Cookie: $pars[0] region.alias=msk\r\n";
$head .= "Cookie2: $Version=1\r\n";
$head .= "Content-Length: ".strlen($post)."\r\n\r\n";
$head .= $post;
$fp = fsockopen($host, $port, $errno , $errstr, 3);
if(!$fp)
{
echo "$errstr ($errno) ";
}
else
{
fputs($fp, $head);
$line='';
while (!feof($fp))
{
$line .= fgets($fp, 1024);
}
fclose($fp);
}
echo $line;
?>
ИМХО курл самая бодрая весч! ))
vizard-06
04.11.2007, 10:13
разобрался.....
<?
$line ="";
$port = 80 ;
$post="&To=79125555555&Msg=test&count=4&SMSHour=11&SMSMinute=55&SMSDay=04&SMSMonth=11&SMSYear=2007&translit=yes";
$host = "www.kaliningrad.mts.ru";
$header = "GET /sendform_sms.htm HTTP/1.0\r\n";
$header .= "User-Agent: Opera/9.10 (Windows NT 5.1; U; ru)\r\n";
$header .= "Host: www.kaliningrad.mts.ru\r\n";
$header .= "Accept-Language: ru-RU\r\n";
$header .= "Referer: http://www.kaliningrad.mts.ru/free_sending.htm\r\n";
$header .= "Proxy-Connection: close\r\n\r\n";
$fp = fsockopen($host, $port, $errno , $errstr, 3);
if(!$fp)
{
echo "$errstr ($errno) ";
}
else
{
fputs($fp, $header);
while (!feof($fp))
{
$line .= fgets($fp, 1024);
}
fclose($fp);
}
preg_match("/JSESSIONID\=(.*?)\;/i",$line,$pars);
print_r($pars);
$head = "POST /smssend.htm HTTP/1.0\r\n";
$head .= "User-Agent: Opera/9.10 (Windows NT 5.1; U; ru)\r\n";
$head .= "Host: www.kaliningrad.mts.ru\r\n";
$head .= "Accept: */*\r\n";
$head .= "Accept-Language: ru-RU\r\n";
$head .= "Referer: http://www.kaliningrad.mts.ru/sendform_sms.htm\r\n";
$head .= "Cookie: $pars[0] region.alias=msk\r\n";
$head .= "Cookie2: $Version=1\r\n";
$head .= "Proxy-Connection: close\r\n";
$head .= "Content-Length: ".strlen($post)."\r\n\r\n";
$head .= $post;
$fp = fsockopen($host, $port, $errno , $errstr, 3);
if(!$fp)
{
echo "$errstr ($errno) ";
}
else
{
fputs($fp, $head);
$line='';
while (!feof($fp))
{
$line .= fgets($fp, 1024);
}
fclose($fp);
}
echo $line;
?>
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot