2016-09-07 62 views
0

我正在尝试根据传递给url的参数即id来显示特定项目的详细信息。但我不希望页面和varialble显示在url上,并且希望仅使用该参数通过使用$_GET['id']来执行进一步的功能。我的代码有点这种方式工作....追加地址栏

<a href="details.php?id=1">Get Detail</a> 

地址栏:: localhost/project/details.php?id=1456 我可以得到类似:: localhost/project/1456

谢谢。

+0

使用的.htaccess重定向 – ManiMuthuPandi

+0

@ManiMuthuPandi我在这很新....可能你请提供一个例子...这将是非常有益的。谢谢你 – sandeepa

回答

0

在项目文件夹中创建一个.htaccess文件和这些行复制到的.htaccess

RewriteEngine On 

RewriteCond %{REQUEST_URI} ^/project/([0-9]+)$ 
RewriteRule ^(.*)$ /project/your_file_to_run.php?id=$1 [L] 

在你的PHP文件your_file_to_run.php可以使用$ _GET [“身份证”]来获取值ID

+0

如果我写地址栏上的localhost/project/1,它显示页面未找到。而我希望在我的另一页上获得ID。我做错了什么?我已经复制了代码并完成了一切。 – sandeepa

+0

什么是您创建的项目中的.htacccess文件的路径 – ManiMuthuPandi

+0

project/htaccess – sandeepa

0

我假设您使用的是Apache。因此,启用mod-rewrite并将.htaccess文件放入您的Web根目录中。

配置员工共赢林卡你需要像水木清华:

RewriteEngine On 
RewriteRule ^/?(.*)$ details.php?id=$1 [NC,L] 
--EMPTY LINE OR FILE WILL FAIL-- 

这个文件应该驻留在项目目录 空行是很重要的!

+0

你能解释一下^ view /(.)/(.)/(.*)。html $ index.php?catid = $ 1&id = $ 2&t = $ 3 [NC],以便我可以根据我的成功。所有困惑 – sandeepa

0

就把这个项目目录中

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-l 
RewriteRule ^([\d]+)$ details.php?id=$1 
+0

不能正常工作.... 你能解释它是如何工作的吗..请 – sandeepa

+0

首先你必须把这个'.htaccess'放到项目目录中,然后每当你调用'localhost/project/1456'时它会重写你的请求details.php文件它必须出现在项目目录中。 –

+0

请尝试编辑! –