Php 当我使用http重定向到主页面时,会话变量丢失
我遇到了一个非常奇怪的问题。Php 当我使用http重定向到主页面时,会话变量丢失,php,http,session,Php,Http,Session,我遇到了一个非常奇怪的问题。 我有3页: home.php forums.php projects.php 每个页面都有如下菜单: <ul> <li><a href='http://www.mysite.com'>Homepage</a></li> <li><a href='forums.php'></a>Forums</li> <li><a href='proje
我有3页:
home.php
forums.php
projects.php
每个页面都有如下菜单:
<ul>
<li><a href='http://www.mysite.com'>Homepage</a></li>
<li><a href='forums.php'></a>Forums</li>
<li><a href='projects.php'></a>Projects</li>
</ul>
- 论坛
- 计划
当用户登录时,将设置会话,并在每个页面中显示最上面的用户名。如果我在项目页面,并且我的用户名在我登录时的顶部,现在我想进入主页,当我在项目和论坛中循环时,用户名在顶部,会话不会丢失。当我点击主页时,它会转到主页,会话丢失,顶部的用户名丢失 我认为问题在于第一个链接主页。 当我使用index.php时,一切都很好,但是这个http://it不起作用。实际上,会话仍然存在,但没有出现
更新
我想我找到问题了
我用http将所有菜单链接转换为完整链接,而不仅仅是像这样的php文件
<ul>
<li><a href='http://www.mysite.com'>Homepage</a></li>
<li><a href='http://www.mysite.com/forums.php'></a>Forums</li>
<li><a href='http://www.mysite.com/projects.php'></a>Projects</li>
</ul>
- 论坛
- 计划
一切正常。我很好奇,我想扩大我的知识面。如果有人知道为什么会这样,请告诉我 已将所有菜单链接转换为完整链接 没有
http://www.mysite.com
不是有效的URL,某些Web服务器将假定路径为“/”,某些浏览器将假定路径为“/”,但大多数浏览器将按原样发送URL,并且Web服务器通常将重定向发送回浏览器
只要主机在所有情况下都是相同的,或者省略了,那么代码就会按照您的预期运行——但是您确实应该使用适当的URL来避免微妙的语义问题,例如
<ul>
<li><a href='http://www.mysite.com/'>Homepage</a></li>
<li><a href='http://www.mysite.com/forums.php'></a>Forums</li>
<li><a href='http://www.mysite.com/projects.php'></a>Projects</li>
</ul>
- 论坛
- 计划
或者
- 论坛
- 计划
您使用什么代码来设置会话?Php抱歉,在链接上看不到我使用Php文件我使用Php函数来存储会话当然我使用会话_start();然后我用$_SESSION['username']检索会话;当您从工作页面转到非工作页面时,域名是否会更改?i、 e.www总是存在吗?不简单,我使用a href='projects.php',但它显示的url栏www.mypage.com/projects.php也适用于我在代码中放置的论坛a href='forums.php',在url栏中它位于www.mypage.com/forums.php,仅适用于我使用http的主页,如果我单击我的徽标,我使用http转到主页,则不会显示会话Up您的浏览器是否可能在实现会话用户名之前显示页面的缓存版本?你在“非工作”页面上强制刷新了吗?好的,你说我应该使用httpp://www.mysite.com/ 好的。此外,我还编写了一个php文件,用于检查url,如果用户在url栏上仅键入mysite.com,则该php文件基于页面,我会说forums.php会将页面名称作为参数,如checkUrl('forums.php'),如果url为mysite.com/forums.php,则该函数将添加httpp://www.mysite.com/forums.php . 这是非常好的工作。这个解决方案行吗?注:在链接上添加了额外的p,以防止创建链接
<ul>
<li><a href='/'>Homepage</a></li>
<li><a href='/forums.php'></a>Forums</li>
<li><a href='/projects.php'></a>Projects</li>
</ul>