2013-03-03 60 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文件,你會在數據庫中搜索匹配的國家!