我遇到了一个非常奇怪的问题
我有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:// 它无效。实际上会议仍在那里,但没有出现。
<小时/> 更新的
这样的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>
一切正常 我很好奇,我想扩展我的知识。如果有人知道为什么会这样,请告诉我。
答案 0 :(得分:0)
将所有菜单链接转换为完整链接
没有
http://www.mysite.com
不是有效的网址,有些网络服务器会认为路径为'/',某些浏览器会假设路径为'/',但大多数浏览器会按原样发送网址,而网络服务器则会通常会将重定向发送回浏览器。
只要主机在所有情况下都相同或省略,那么代码将按照您的预期运行 - 但您确实应该使用正确的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>
...或
<ul>
<li><a href='/'>Homepage</a></li>
<li><a href='/forums.php'></a>Forums</li>
<li><a href='/projects.php'></a>Projects</li>
</ul>