如何将/1.php更改为index.php?id = 1

时间:2012-05-16 22:29:56

标签: php

if (file_exists($filename)) {
echo "<a class='next' href='$filename'><img  src='images/next.png'</a>";
} 
else {
echo "<img src='images/next-dis.png'/>";
}

我正在努力做到这一点我会有像1.php 2.php 3.php这样的网页......但我希望它们看起来像这样“index.php?id = 1”而不是/ 1.php,/ 2.php并希望阻止尝试访问(例如。)2.php的用户..任何人都可以帮忙吗?..有什么简单的方法可以做到这一点吗?

3 个答案:

答案 0 :(得分:2)

Apache .htaccess文件中的以下重写规则应该可以解决问题。

RewriteEngine On
RewriteRule (\d+)\.php /index.php?id=$1

这基本上匹配格式为[0-9]+.php的任何网址,并将其重定向到/index.php?id=###,其中###匹配###。php。

答案 1 :(得分:0)

搜索.htaccess重写规则。您将在类似的场景中找到示例。请参阅 - http://httpd.apache.org/docs/2.0/misc/rewriteguide.html

中的实际解决方案部分

答案 2 :(得分:-1)

在index.php中你可以这样做

include($_GET["id"]".php");

这将加载任何id为get var,但是任何人都可以更改此变量并获取他们在此处输入的任何内容。