2013-03-03 86 views
1

我用笨我在视图中创建下拉像国家名称出现在url中?

<?php echo form_open('trip/result', array('method' => 'get')); ?> <div class="row-fluid"> <div class="main-form"> <select name="look_for" class="span4"> <option selected="selected" value="0"> choose country </option> <option value="US">USA</option> <option value="EN">England</option> <option value="FR">France</option> </select> 我想国家的完整名称出现在URL,我有很多的国家,所以我必须在数据库表像值(EN- US-FR),所以我想发送每个国家的全名和符号在URL中出现,以使网站的搜索引擎优化。

+0

我想要例如当用户选择英格兰时......英格兰这个词出现在像www.prototype/EN/Engaland这样的网址中 – 2013-03-03 14:17:25

回答

1

您正在寻找友好的网址!网络上有很多关于它们的文章。例如,如果您使用Apache Web Server,那么只需google friendly url apache!我已经为你做到了!示例:Friendly url using php and htaccessUse Apache's mod_rewrite to make URLs more user friendly

对于您的情况,您应该将option字段的值更改为国家的长名称,但不要忘记过滤“特殊”字符,如空格或引号!实际上,您应该在数据库的国家/地区表中创建另一列,其中包含每个国家/地区的“slug”。因此,“英国”将成为“联合王国”,例如。有一些功能可以做到这一点,like this one

如果您使用的是Apache,你.htaccess看起来是这样的:

RewriteEngine on 
RewriteRule ^countries/([a-zA-Z]+)$ ./countries.php?country=$1 [L] 

然后,在你的countries.php文件,你会在数据库中搜索匹配的国家!