の文字をどのように扱うべきかを理解しようとしていますURLs
。これは、ユーザーがコンテンツを保存し、URL
.
だから、ウェブサイトのようなWikipedia
ものLast.FM
。
サイトを見ると、ユーザーが何かを書くhttp://it.wikipedia.org/wiki/Trentemøller
と、アーティストのページにたどり着くことができます。
ページが読み込まれた後、次のように書かれている URL をコピーすると:http://it.wikipedia.org/wiki/Trentemøller
しかし、テキスト エディタに貼り付けると、次のように貼り付けられます。
http://it.wikipedia.org/wiki/Trentem%C3%B8ller
そのため、文字ø
は次のように貼り付けられます%C3%B8
もちろんこのようなURL(アーティスト小林武史さんのページ)も同様です。
http://www.last.fm/music/小林武史
http://www.last.fm/music/%E5%B0%8F%E6%9E%97%E6%AD%A6%E5%8F%B2
1 番目または 2 番目の数字を入力すると、どのような場合でもページは機能しますが、なぜですか?
.htacces
andを使用して何かを行う必要があると思いますmod_rewrite
が、よくわかりません。特殊文字は自動的に URL 特殊文字に変換されますか?
次に、PHP にコンテンツ名を使用して正しいクエリを実行させるにはどうすればよいでしょうか?
次のようなテーブルがある場合
table_users
- username
- age
- height
- weight
- sex
- email
- country
からボブを取得するmod_rewrite
ような住所を書くことはできますが、どうですか?http://mysite.com/user/bob
username
table_users
http://mysite.com/user/小林武史
ここで、私がやろうと思っていることの簡単な例を示します。
#.htaccess
RewriteEngine On
RewriteRule ^(user/)([a-zA-Z0-9_+-]+)([/]?)$ user.php?username=$2
<?php
// this is the page user.php
// this is the way I use to get the url value
print $_REQUEST["username"];
?>
これは機能しますが、[a-zA-Z0-9_+-] に限定されています。セキュリティをあまり失うことなく、他の文字と同様にすべての文字との互換性を高めるにはどうすればよいですか?
誰かがトラブルを回避する方法を知っていましたか?