在我的网站上,我有一个表单,用户可以从中选择在新闻数据库中搜索特定的标题。 他们可以选择主要量规(例如Businnes)和subrubric(例如Local),然后输入一些要搜索的字符串。 提交表单后,网页会返回请求的信息,网址如下所示。
foo.bar/1001/234/
其中1001是Businnes的id,234是Local的id
怎么做这个id被相关的名字取代?
foo.bar/Businnes/Local/
答案 0 :(得分:0)
这可以使用apache / htaccess / mod_rewrite完成,然后由PHP处理
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
从那里你需要使用$_SERVER['REQUEST_URI']
并解析你需要的数据。
第一行打开重写引擎。
第二行显示为if the requested file or directory does not exist, send the request to index.php
您可以爆炸$_SERVER['REQUEST_URI']
来获取所需数据的一部分,无需正则表达式。
答案 1 :(得分:0)
为每个zour记录生成一个重写名称(可以是唯一的,也可以是冒险,空格等) - 使用regexp进行清理
答案 2 :(得分:0)
你需要查看mod_rewrite - 如果你不清楚generator那么,对于简单的重写有一个非常方便的Regex
答案 3 :(得分:0)
如果您正在运行Apache网络服务器 - 我假设您是,那么您需要查看MOD重写。
我在这里收到了一个很好的教程:http://net.tutsplus.com/tutorials/other/a-deeper-look-at-mod_rewrite-for-apache/
答案 4 :(得分:0)