Javascript-форум (https://javascript.ru/forum/)
-   Серверные языки и технологии (https://javascript.ru/forum/server/)
-   -   Как передать значение сессии через js (https://javascript.ru/forum/server/84749-kak-peredat-znachenie-sessii-cherez-js.html)

Zhenyaxxxx 06.12.2022 20:44

Как передать значение сессии через js
 
Всем доброго дня. На странице index.php, есть обычный запрос по загрузке страницы:
<?php
session_start();
?>

<!DOCTYPE html>
<html>
<head>
    <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8">	
	<title>Тестовая страница</title>
</head>
<body>
<div class='result'></div>
<?php
echo 'session_test='.$_SESSION['test'].'</br>';
?>


<script src='jquery.js'></script>
<script>
$("document").ready(function() {
$(".result").load('test.php');

});
</script>
</body>
</html>

В страние test.php я назначаю сессию:
session_start();
$_SESSION['test'] = 'привет из test.php';



Подскажите, почему данные сессии из test.php не переносятся в index.php ????

ksa 07.12.2022 09:56

Zhenyaxxxx, сессии есть браузерные... А есть серверные.
Они не покидают "зоны" своего действия.

Барузер отобразил index.php... Потом обратился к test.php...
test.php просто на сервере установил серверную сессию - все, ее значение не попадет в браузер, если ее явно не передать контентом на страницу.
В test.php у тебя нет "вывода" в передаваемый контент значения сессии.

Zhenyaxxxx 07.12.2022 10:52

Спасибо за ответ. Дело в том, что я раньше как-то назначал сессию через такую загрузку страницы в js... Подскажите, как можно через js ПРАВИЛЬНО задать значение сессии...?

рони 07.12.2022 10:57

Zhenyaxxxx,
возможно вам нужна старая версия jquery, если раньше всё работало.

HomaMagnat 08.05.2023 20:57

может заменить: echo 'session_test='.$_SESSION['test'].'</br>'; на:
echo 'session_test='.$_SESSION["test"].'</br>';


Часовой пояс GMT +3, время: 13:48.