Я делаю скрипт для тестирования веб-приложения.
Итак, сначала я хочу, чтобы скрипт вошел в систему, поэтому я сделал этот код:
<?php
$ch = curl_init('http://localhost/ASTechOLE/login.php');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
$response = curl_exec($ch);
$dom = new DOMDocument;
libxml_use_internal_errors(true);
$dom->loadHTML($response);
$tags = $dom->getElementsByTagName('meta');
for($i = 0; $i < $tags->length; $i++){
$grab = $tags->item($i);
if($grab->getAttribute('name') === 'csrf_token'){
$token = $grab->getAttribute('content');
}
}
$data = array(
"username"=>"008C108",
"password"=>"8706405",
//"form"=>"submit"
//"csrf_token"=>$token,
//"submitLogin"=>"submitLogin"
);
curl_setopt($ch, CURLOPT_URL, 'http://localhost/ASTechOLE/login.php');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
$response = curl_exec($ch);
echo $response;
?>
Но когда я запускаю его, я просто получаю страницу входа. Я не получаю никакой ошибки, но она ничего не делает.
Почему это может быть?
Действие формы переходит к login-submit.php, так что это то, что я изменил в своем коде. Теперь я получаю Warning: DOMDocument::loadHTML(): Empty string supplied as input in D:\Programas\xampp\htdocs\CURL\curl.php on line 10
Заранее спасибо.