2012-10-15 29 views
2

我有一个网站,我使用PHP来导航,我试图用一个单一的网页,我也有从底部导航太

向上滑动联系人页面

在hrefs是类似于href =“?id = contactme”,然后我使用switch()函数来导航页面

但是当我转到联系页面,然后尝试离开它,它添加无论是当前的一个喜欢什么... com /?id = contactme?

现在我想知道我应该使用这些HREF中绝对链路或者是总是建议

也同时检测这一切都在我的电脑上测试服务器上就意味着改变后面的链接到本地​​主机,

其他任何帮助或建议将是巨大

还对PHP的,我可以使用悬停链接或元素与PHP在屏幕或其他格变化或做我必须使用JavaScript的一个问题要问?

回答

1

如果所有的网页都通过开机准备(即的index.php),那么改变你HREF到

<a href="index.php?id=contactme">Contact Us</a> 

对于你的问题的第二部分,你将不得不使用JavaScript。看看jquery,因为它使一些任务变得更容易。

祝你好运!

0

如果你真的想使用这样的前端控制器模式(即一个控制所有页面显示的脚本文件)。我个人认为你最好利用你选择的Web服务器的URL重写功能(例如Apache的mod_rewrite)来生成全部指向单个控制器文件的干净URL。因此,例如,你可以有网址的像最终用户:

www.domain.com/contactme 
www.domain.com/anotherpage 
www.domain.com/yetanotherpage 

这些可全部由服务器来指向类似:

www.domain.com/index.php?page=contactme 
www.domain.com/index.php?page=anotherpage 
www.domain.com/index.php?page=yetanotherpage 

与浏览器仍显示原来的“干净”地址栏中的网址。换句话说,web服务器将请求发送到index.php的事实对最终用户是隐藏的。您的HTML中的链接也会使用这些“干净”的URL,使其成为您无需担心自己传递实际参数的位置。

一个例子.htaccess文件,您可以使用在Apache可能是这样的:

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php?page=$1 [L,QSA] 

这会直接说是不实际的文件或目录名的index.php前端控制器所有传入的请求。

所以你的HTML,简直是这样的:

<a href="/contactme">Text</a> 

在问候悬停的造型元素,你可以使用CSS :hover伪类的很多基本的悬停的造型,但是对于大多数现代Web应用程序,你可能会最终使用CSS和JavaScript的组合。

0

为了防止浏览器将当前网址来查询您可以使用像

<a href="index.php?id=contactme"> 

或白金路径相对路径像

<a href="/index.php?id=contactme"> 

的绝对路径等于

<a href="http://localhost/index.php?id=contactme"> 
or 
<a href="http://mydomain.com/index.php?id=contactme"> 
+0

您是“绝对”路径是指向文档根目录的* relative *链接。 – PeeHaa