2012-06-25 40 views
-2

我有一個文本字段,當我在它中輸入一個值。它存儲在數據庫中,通過查詢字符串傳遞。當手動輸入包含」(雙引號)的字符串時,它工作正常,但是當粘貼非8位文本「(雙引號)時,它不能解碼字符串。雙引號的Unicode轉換「,」和「

我推薦以下鏈接來理解問題。

http://www.rishida.net/tools/conversion/

+0

什麼是「不能夠uriDecode」是什麼意思?什麼是發生或沒有發生?你的代碼是什麼?任何錯誤?亂碼文本? – deceze

+0

沒有錯誤,因爲如此。 – Chittprakash

+0

當我傳遞一個字符串假設java堆棧「15 overflow.via url被轉換爲java%20stack%20%2215%20overflow.but如果不是來自鍵盤的雙引號,如果我將雙引號粘貼爲「(傾斜一個)。在db中保存的值是java%20stack%20%E2%80%9D15%20overflow not java stack」15 overflow – Chittprakash

回答

0

我想你所談論的PHP變量傳遞的問題。您沒有向我們提供代碼,但如果我瞭解您的問題,則可以在字段中輸入「和」字段,但只能傳遞到下一頁。可能的解決方法是不使用」,或者你可以使用一些JavaScript來全自動觸發的onkeydown事件將會被自動正確的文本和開關從」到「

<script type="text/javascript"> 
function changetext(field_name) { 
var myTextField = document.getElementById(field_name).value; 
var myTextFieldEdited = myTextField.replace('」', '"'); 
document.getElementById(field_name).value = myTextFieldEdited; 

return; 
} 
</script> 


<form> 
<textarea id="text_field" onkeydown="changetext('text_field');" onsubmit="changetext('text_field');"></textarea> 
</form> 

的onkeydown是當你寫的文字,如果你CTRL + C觸發並提交ctrl + v文本應該做最後檢查和改變,以確保沒有文字