Я создал страницу входа, которая принимает данные от пользователя и проверяет базу данных, чтобы убедиться, что это правильный пользователь.Как только пользователь вошел в систему, нажатие любой кнопки веб-страницы завершает работу, вместо того, чтобы перенаправлять меня на запрошенную страницу. Если щелкнуть любую веб-страницу, она будет перенаправлена на главный сервер вместо запуска на локальном хосте.Я попытался получить ключ сеанса, но у меня не получилось.
Проблема в том, что веб-сайт, на котором я публикую информацию, работает в сеансе.Когда я публикую детали, серверная сторона не создает cookie и не передает обратно.Я посмотрел на вкладку сети и увидел там, что сессионный cookie-файл устанавливается, возможно ли получить этот сессионный cookie-файл из заголовка?
Я попытался создать собственный cookie-файл и скопировать и вставить сессионный cookie-файл.но это не работаетИспользовал код других пользователей и все еще имеет ту же проблему
<?php
session_start();
$cookie="C:/xampp/htdocs/cookie.txt";
$url="https://online-learning.aau.ac.ae/moodle/login/index.php";
$_COOKIE['username'] ="xxxxx";
$_COOKIE['password']="xxxxx";
$anchor = "";
setcookie("MoodleSession","690qciai223fgflduqjtiu5ei3");
// $useragent = $_SERVER['HTTP_USER_AGENT'];
// $phpsessionid= $_COOKIE[session_name()]=session_id();
// $strCookie = 'PHPSESSID=' . $_COOKIE['PHPSESSID'] . '; path=/';
$postFields = array('username' => $_COOKIE['username'] ,'password' =>$_COOKIE['password'], 'anchor' => $anchor ,
'submit'=> 'submit' );
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_VERBOSE, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('online-learning.aau.ac.ae'));
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_COOKIESESSION, 1);
curl_setopt ($ch, CURLOPT_COOKIEJAR, $cookie);
curl_setopt ($ch, CURLOPT_COOKIEFILE, $cookie);
curl_setopt ($ch, CURLOPT_COOKIE, $cookie);
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_POSTFIELDS, http_build_query($postFields));
curl_setopt ($ch, CURLOPT_REFERER, $url);
$response = curl_exec($ch);
if(!$response){
echo "logged out";
}
else {
curl_setopt ($ch, CURLOPT_URL, "https://online-learning.aau.ac.ae/moodle/my/");
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Host: online-learning.aau.ac.ae'));
curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_POSTFIELDS, http_build_query($postFields));
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
// print_r(curl_getinfo($ch));
echo $response;
}
существует неопределенная ошибка при входе в систему, и я хочу, чтобы curl создал cookie, получая cookie-файл сеанса со стороны сервера, и держал меня в курсепока я не выйду из системы