Прошу помочь с задачей.
Делаю скрипт на PHP для отправки POST запроса на официальный сайт Украинской ЖД для получения инфы о наличии поездов.
Но постоянно получаю в ответ "Введена неверная дата отправления"
Скрипт парсит id сессии с куками и токен тоже
на сайте с билетами
Там же я посмотрел, что браузер отправляет на сервер.
И ввел те же параметры и хедер.
Короче вот таким запросом:
// Пост запрос
$url = 'http://booking.uz.gov.ua/ru/purchase/search';
$data = array('station_id_from' => '2200001',
'station_id_till' => '2208001',
'station_from' => '%D0%9A%D0%B8%D0%B5%D0%B2',
'station_till' => '%D0%9E%D0%B4%D0%B5%D1%81%D1%81%D0%B0',
'date_dep' => '20.06.2015',
'time_dep' => '00%3A00',
'time_dep_till' => '',
'another_ec' => '0',
'search' => '');
$options = array(
'http' => array(
'header' => "Host: booking.uz.gov.ua\r\n".
"User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Firefox/38.0\r\n".
"Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*;q=0.8\r\n".
"Accept-Language: uk,ru;q=0.8,en-US;q=0.5,en;q=0.3\r\n".
"Accept-Encoding: gzip, deflate\r\n".
"DNT: 1\r\n".
"Content-Type: application/x-www-form-urlencoded; charset=UTF-8\r\n".
"GV-Ajax: 1\r\n".
"GV-Referer: http://booking.uz.gov.ua/ru/\r\n".
"GV-Screen: 1280x800\r\n".
"GV-Token: $uz->token\r\n".
"GV-Unique-Host: 1\r\n".
"Referer: http://booking.uz.gov.ua/ru/\r\n".
"Content-Length: 208\r\n".
"Cookie: HTTPSERVERID=$uz->cookie_gv_server_n;_gv_sessid=$uz->cookie_gv_sessid;_gv_lang=ru;__utma=31515437.1166281925.1433453305.1433453305.1433453305.1;__utmb=31515437.1.10.1433453305;__utmc=31515437;__utmz=31515437.1433453305.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); __utmt=1\r\n".
"Connection: keep-alive\r\n".
"Pragma: no-cache\r\n".
"Cache-Control: no-cache\r\n",
'method' => 'POST',
'content' => http_build_query($data),
),
);
$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);
// Обработка результатов
$inp = $result;
$s = preg_replace('/\\\u0([0-9a-fA-F]{3})/','&#x\1;',$inp);
$s = html_entity_decode($s, ENT_NOQUOTES, 'UTF-8');
$s = json_decode($s);
print_r($s->value);
Пробовал все тоже на http-master.com в респонсе снова не та дата.