我有这个应用程序,我使用Codeigniter作为Backend和BackboneJS作为前端。因此,为了显示数据,我使用了Phil Sturgeon的Restserver。在这种情况下,用户可以单击一个字母来显示艺术家。现在,因为我使用丹麦字母表,我的网址中显示丹麦字符有问题 - >我收到404错误。
所以我尝试将它添加到Codeigniter中的config.php:
$config['permitted_uri_chars'] = 'æ ø å a-z 0-9~%.:_\-';
在我的root index.php中,我添加了一些hack:
'artists\/[a-zA-Z]',
'artists\/[øØ]',
'artists\/[æÆ]',
'artists\/[åÅ]',
'artists\/0-9',
...etc
但是,这不起作用。我发现404页面未找到错误,检查器工具中的网络选项卡总是告诉我%C3%A6
...
我的带有MySQL查询的API如下所示:
public function letter_get($letter)
{
$this->load->database();
if($letter == '0-9')
{
$where = "formated_name LIKE '0%' OR formated_name LIKE '1%' OR formated_name LIKE '2%'
OR formated_name LIKE '3%' OR formated_name LIKE '4%' OR formated_name LIKE '5%' OR formated_name LIKE '6%' OR formated_name LIKE '7%' OR formated_name LIKE '8%' OR formated_name LIKE '9%' OR formated_name LIKE '#%'";
}
else
{
$where = "formated_name LIKE '".$letter."%'";
}
$sql = "SELECT artist_id, formated_name FROM artists WHERE ".$where;
$query = $this->db->query($sql);
$data = $query->result();
if($data) {
$this->response($data, 200);
} else {
$this->response(array('error' => 'Couldn\'t find any artists with this letter!'), 404);
}
}
所以也许我必须在这里添加一些东西?
有谁知道该怎么做?
提前致谢...