2017-10-29 8 views
0

を含む値を含む結果を渡していない:http://example.com/channel.php?channel=#football

注:#footballはハッシュタグで、#は、ハッシュタグ への参照としてしかしchannel.phpに使用されていますページ '#football'の値が下のコードを使用していません。

<? 
if (isset($_GET['channel']) && $_GET['channel'] != "") { 
    $channel = $_GET['channel']; 
} 
?> 
+0

質問は、最初はどこにあるのですか?それはどういう意味ですか?私はこれがもっと深くなると思う。 –

+0

@ Fred-ii-質問を更新してください –

+0

ハッシュタグはHTTP経由で送信するためのものではなく、ブラウザ内で解決するためのものです(例:HTML/JS)。送信する前にハッシュタグを省略し、 "channel"パラメータの値が "#football"の代わりに "football"になるようにします。 – Tom

答えて

0

URIの#シンボルends the request part and starts the hash partは、それがサーバーに送信されていません。ハッシュをエンコードするには、encodeURIComponentを使用し、要求を処理する前にバックエンドでハッシュをデコードします。だから、あなたのURIは次のようなものでなければなりません:

"http://example.com/channel.php?channel="+encodeURIComponent("#football") 
// gives 
"http://example.com/channel.php?channel=%23football" 
関連する問題