会话自动出现在url中

时间:2014-04-07 10:10:45

标签: php session url-rewriting

我希望我的浏览器自动显示附加到网址的sid。我已经改变了php.ini文件中的一些设置,即 session.use_trans_sid = 1 session.use_only_cookies = 0 session.use_cookies = 1

我也禁用了我的浏览器Cookie。

我有三个PHP页面。第一个是login和result.php并注销。我希望在用户点击login.php中的提交时看到sid例如result.php?sid=asdasd23hasjhd。或者我必须硬编码。在我的形式 <form action = result.php <?=SID?>喜欢这个。 因为我已经浏览过这样的页面,并且设置了php自动重写网址,附加了会话ID,但我无法看到它的页面。

2 个答案:

答案 0 :(得分:0)

您可以通过jquery脚本包含会话ID。 e.preventDefault()会阻止链接的默认行为,然后您可以添加会话ID。

您可以通过函数session_id();

获取当前会话ID
$sid=session_id();


<a href="http://www.mysite.com/test.php" class="foo">link here</a>

$('.foo').click(function(e)
{
    e.preventDefault();
    window.location = $(this).attr('href') + '?sessionid='+<?php echo $sid ?>;
});

答案 1 :(得分:0)

试试这段代码:

<?php
session_start();
$sid=session_id();
?>
<form action="result.php" type="GET">
<input type="hidden" name="sid" value=<?php echo $sid;?> >
<input type="submit">
</form>

* 注意: 检查您是否在页面顶部声明了会话 *