<?php
$city = '17'; // Польщі Вінниця
require_once 'Parser.class.php';
$ch = curl_init();
$realuri = 'https://www.vfsvisaonline.com/poland-ukraine-appointment/(S(a1hauy45tsmpst45pnkxci45))/AppScheduling/AppWelcome.aspx?P=s2x6znRcBRv7WQQK7h4MTjZiPRbOsXKqJzddYBh3qCA=';
curl_setopt_array($ch, array(
CURLOPT_URL => $realuri,
CURLOPT_USERAGENT => 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.101 Safari/537.36',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_SSL_VERIFYHOST => false,
CURLOPT_SSL_VERIFYPEER => false
));
$parser = new Parser;
$parser -> setText(curl_exec($ch));
if($parser -> getRealURI()) {
$realuri = $parser -> getRealURI();
curl_setopt($ch, CURLOPT_URL, $realuri);
$parser -> setText(curl_exec($ch));
}
$submit = $parser -> getRealPath($realuri) . $parser -> getFormAction();
curl_setopt_array($ch, array(
CURLOPT_URL => $submit,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => array(
'__EVENTTARGET' => $parser -> getTarget('Призначити дату подачі документів'),
'__EVENTARGUMENT' => $parser -> getArgument('Призначити дату подачі документів'),
'__VIEWSTATE' => $parser -> getValueById('__VIEWSTATE'),
'____Ticket' => $parser -> getValueById('____Ticket'),
'__VIEWSTATEENCRYPTED' => $parser -> getValueById('__VIEWSTATEENCRYPTED'),
'__EVENTVALIDATION' => $parser -> getValueById('__EVENTVALIDATION'),
$parser -> getName('hidCSRF') => $parser -> getValueById($parser -> getId('hidCSRF')),
)
));
$parser -> setText(curl_exec($ch));
curl_setopt($ch, CURLOPT_POST, false);
$submit2 = $parser -> getRealPath($realuri) . urldecode($parser -> getFormAction());
curl_setopt_array($ch, array(
CURLOPT_URL => $submit2,
CURLOPT_REFERER => $submit,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => array(
'__VIEWSTATE' => $parser -> getValueById('__VIEWSTATE'),
'____Ticket' => $parser -> getValueById('____Ticket'),
'__VIEWSTATEENCRYPTED' => $parser -> getValueById('__VIEWSTATEENCRYPTED'),
'__EVENTVALIDATION' => $parser -> getValueById('__EVENTVALIDATION'),
$parser -> getName('hidCSRF') => $parser -> getValueById($parser -> getId('hidCSRF')),
$parser -> getName('cboVAC') => $city,
$parser -> getName('cboPurpose') => '1', //Подача документів,
$parser -> getName('btnSubmit') => 'Підтвердити' //лол, но обязательно нужно xD
)
));
$parser -> setText(curl_exec($ch));
curl_setopt($ch, CURLOPT_POST, false);
curl_setopt_array($ch, array(
CURLOPT_URL => $parser -> getRealPath($realuri) . urldecode($parser -> getFormAction()),
CURLOPT_REFERER => $submit2,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => array(
'__EVENTTARGET' => 'ctl00$plhMain$cboVisaCategory',
'__EVENTARGUMENT' => '',
'__VIEWSTATE' => $parser -> getValueById('__VIEWSTATE'),
'____Ticket' => $parser -> getValueById('____Ticket'),
'__VIEWSTATEENCRYPTED' => $parser -> getValueById('__VIEWSTATEENCRYPTED'),
'__EVENTVALIDATION' => $parser -> getValueById('__EVENTVALIDATION'),
$parser -> getName('hidCSRF') => $parser -> getValueById($parser -> getId('hidCSRF')),
$parser -> getName('cboVisaCategory') => '235', // Національна Віза
$parser -> getName('tbxNumOfApplicants') => '1', //Кількість заявників
$parser -> getName('txtChildren') => '0', //К-сть дітей вписаних у паспорт батьків
)
));
preg_match('/class="Validation">(.*?)<\/span>/i', curl_exec($ch), $data);
echo $data[1]; //выводим результат :D
// P.S. заебался