我將查詢傳遞給我的搜索結果頁面,其變量爲:?s=
。如何在URL中傳遞'&'符號值?
我正在測試該網站,並發現當查詢中有&
符號時,當我嘗試檢索$_GET['s']
時,它在&符號中被剪切。
我試過&
,同時也將它轉換爲%26
,我仍然有同樣的問題。
我如何編碼它們以在URL中傳遞它們?
編輯:
我指出,我試圖它編碼爲%26
,它仍然沒有工作。
我urlencode()
和?s=pizza%26pasta
試過當我print_r($_GET)
我得到:
Array ([s] => pizza [pasta] =>)
編輯2:
我剛剛發現這個問題實際上已經做.htaccess
似乎變換了「 &東西'在'&東西='。不知道如何解決它在htaccess中。
這是我的.htaccess文件:
RewriteEngine On
RewriteBase/
# remove www
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1%{REQUEST_URI} [R=301,QSA,NC,L]
# rewrite to action
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^([^/]+)/?$ /a/?s=$1 [L,QSA]
你試過了urlencode()來 – 2012-08-02 06:23:54
所以要 「&」 也是在一個GET後,所有的聲明? – 2012-08-02 06:25:21
我有一種感覺,你的細節中缺少一些東西。你實際上讓我仔細檢查了這一點,並且我可以在本地和我的一臺服務器上使用帶'%26'的URI確認不會分割變量。 – Leigh 2012-08-02 06:34:19