有时候浏览器禁用cookie或者禁止第三方cookie的写入时,我们可能要使用到原生的session.

1、test.php

ini_set('session.use_cookies', 0);
ini_set('session.use_only_cookies', 0); //是否仅用cookie
ini_set('session.use_trans_sid', 1); //是否自动url带上session id
ini_set('session.name', 'sid'); //session name

session_start();
$_SESSION['name'] = 'hello';

echo '<a href="target.php?foo=bar">target</a> | <a href="target.php?' . session_name() . '=' . session_id() . '">target width session id</a>';

发现url上自动带上session id。

2、target.php

ini_set('session.use_cookies', 0);
ini_set('session.use_only_cookies', 0);
ini_set('session.use_trans_sid', 1);
ini_set('session.name', 'sid');

if (!isset($_GET[session_name()])) {
	die('fk');
}

session_id($_GET[session_name()]); // 要在start之前
session_start();

echo session_id();
echo '<br>';
print_r($_SESSION);

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-06-04
  • 2022-02-04
  • 2022-01-18
  • 2021-12-19
猜你喜欢
  • 2021-12-10
  • 2022-12-23
  • 2022-12-23
  • 2021-12-23
  • 2022-12-23
  • 2021-12-07
  • 2022-12-23
相关资源
相似解决方案