2013-01-11 88 views
0

這真的很奇怪。我有一個窗體內的文本框。在點擊提交按鈕,文本框的內容被髮布到使page2.php

如果文本包含像

This is a sample url 
https://maps.google.com/maps?q=karnataka+badminton+association+bangalore&ie=UTF-8&ei=w4_lUNWmJozjrAfSkYGYBA&ved=0CAsQ_AUoAA 

現在文本,當我點擊提交,我回蕩在使page2.php內容這就是我得到的:

//echo $_POST['message']; 

This is a sample url 
https://maps.google.com/maps?q=karnataka 

我收到消息,但URL在第一個'+'後被剪切。任何想法如何獲得這項工作?

我甚至用螢火蟲POST請求進行檢查,並在那裏它正確顯示完整的網址。

新編輯: 我正在嘗試與ajax現在。

+1

該代碼沒有任何問題,並且確切代碼的測試在此正常工作。 –

+0

請看這裏:http://rudiv.se/stack/test.php –

+0

@RudiVisser,謝謝。我發現它在你的例子中工作正常......我修改了我的腳本以使用ajax ...並且它仍然給出同樣的問題..我知道我從我身邊犯了一個錯誤,但無法跟蹤它... –

回答

1

您應該先對網址進行編碼。您可以使用嵌入在javascript中的encodeURIComponent(str)或encodeURI(str)來執行此操作。請參閱:Encode URL in JavaScript?

然後,您應該使用urldecode/rawurldecode將url解碼爲其本機格式。您也可以根據需要存儲解碼後的表單並在php/javascript中解碼url。請參閱:http://php.net/manual/en/function.rawurlencode.php

+0

我晚回覆的信息。是的,那完全是錯誤。當我通過javascript傳遞參數時,url中的'+'符號與javascript的連接符'+'發生衝突。謝謝。 –