2012-01-13 87 views
0

我有一本从一种语言翻译到另一种语言的词典/词汇表。在网站链接中保留字符

当我填写在表格某个词,例如:

Çögek

后,我提出我得到这个网址:

/搜Q =%C7% F6%FEEK%FD

有什么办法只是为了在URL中有这样的:

/搜索?Q =Çögek

我觉得最后一个是SEO友好的......但不知道该怎么做......

+0

哪一部分你到底是遇到问题?生成网址?显示它们? – jeanreis 2012-01-13 10:22:09

+0

获取变量将被编码为http确定...您可以执行的操作是检索它们,然后应用php的urldeocde($ _ GET ['w'])来获取您提交的值 – 2012-01-13 10:27:42

+0

我希望单词保持与URL相同,未转换为:%C7%F6%FEek%FD。 – Gerben 2012-01-13 10:28:18

回答

1

我试着用我的本地主机。这个对我有用。

$str = "Çöşekı"; 
header("Content-type: text/html; charset=utf-8"); 
header("location:example.org/word?w=".utf8_encode($str)); 
exit; 

在重定向页面,使用

echo utf8_decode($_GET['w']); 

尝试。

看到HTML部分

<html> 
<head> 
     <meta http-equiv="Content-Type" content="text/html"; charset="utf-8"> 
</head> 
<form name="" id="" method="get" action=""> 
    <input type="text" name="w" value=""> 
    <input type="submit" name="sub" value="submit"> 
</form> 
</html> 
+0

如何在打表单中的提交按钮时将该标题位置称为“响应”?此外,$ str必须具有输入字段的值... – Gerben 2012-01-13 22:10:08

+1

我已经使用html表单编辑了我的答案。我已经添加了meta标签,希望它对您有用。 – 2012-01-14 09:44:39

2

不,你不能。需要编码才能生成有效的URL。

相反,在接收码解码值(什么平台是你反正,URL解码通常是自动完成的)

使用urlencodeurldecode

也看到rawurldecode

+0

我知道编码是必需的,但我想保留在URl这个词,而不是像这样:%C7%F6%FEek%FD。 我知道这是可能的,如果你在谷歌搜索到喜欢的话: 你得到的结果 奥登·贝西 : en.wikipedia.org/wiki/Ödön_Beöthy 正如你所看到的,o是在没有编码的网址。 我正在使用PHP的方式。 – Gerben 2012-01-13 10:34:48

0

如果你正在寻找搜索引擎优化友好的网址我建议你看看Apache的Mod Rewrite和.htaccess的用法。

+0

我以前做过,找不到任何有用的东西。 不知道这是如此困难,就像我所看到的所有网站都只有像ö,ü,ş,á,et cetera这些特殊字符的URL名称,而不是那些hexacodes ....我想也有这个。 – Gerben 2012-01-13 10:49:11