2012-02-14 4 views
1

私は既存のプロジェクトに取り組んでいます。いくつかの点では実装には若干の不備があります。コードが正常に動作し、正常にユーザをリダイレクト上方phpとjavascriptによるURLエンコーディング?

<?php 
    echo "<script>window.location='/".$this->getRequestParameter("culture")."/profile/".$this->username';</script>"; 
?> 

正常状態で:

たとえばIアクションに以下のコードを発見しました。

Uneståhl 

それは

Unestål 

に変換し、サーバーエラーが返されます。しかし、問題は、ユーザー名がこのようなものである場合に発生します。

これを修正する方法はありますか?

おかげ

+0

を? –

+0

リダイレクトされると、ブラウザのアドレスバーに変換されたコードが見えてしまいました。 – Awan

+0

私はそのようなことを(window.location = 'Uneståhl'で)試してみました。ブラウザは値を変更しませんでした。 IE9とChromeで試しました。どのブラウザを試しましたか? –

答えて

2

あなたはPHP urlencode機能使用して試みることができる:あなたはそれを変換見

<?php 
    echo "<script>window.location='/".$this->getRequestParameter("culture")."/profile/".urlencode($this->username). "';</script>"; 
?> 
+0

修正済みですが、 'urlencode()'を使っています。 'url_encode()'は私に関数が見つからないというエラーを与えています。 – Awan

+0

あなたはそうです。間違って申し訳ありません。私は答えを更新します。 –