首頁  >  文章  >  web前端  >  javascript傳遞中文亂碼給PHP怎麼辦

javascript傳遞中文亂碼給PHP怎麼辦

coldplay.xixi
coldplay.xixi原創
2020-08-12 10:05:381630瀏覽

javascript向PHP傳遞中文亂碼的解決方法:首先在javascript程式碼中用【encodeURIComponent()】函數處理中文字串;然後保證JavaScript和Asp、Php等後端程式間傳值編碼統一即可。

javascript傳遞中文亂碼給PHP怎麼辦

javascript傳遞中文亂碼給PHP的解決方法:

在javascript程式碼中用encodeURIComponent()函數處理中文字串,

JS程式碼:

<script type=”text/javascript”>
string = encodeURIComponent(string);
location.href = index.php?keyword=’+string;
</script>

相關學習推薦:javascript影片教學

##PHP程式碼:

<?php
$keyword = (isset($_GET[&#39;keyword&#39;])) ? $_GET[&#39;keyword&#39;] : &#39;&#39;;
?>

相關學習推薦:

php程式設計(影片)

#保證JavaScript和Asp、Php等後端程式間傳值編碼統一

在非英文字元集的頁面上,如果使用Ajax方式進行資料互動的話,就必須要注意保證前後端資料的統一編碼,否則,很容易就出現亂碼!

在後端是ASP程式的情況下,保持前端Javascript和Asp之間傳值的統一編碼可以使用以下函數進行處理:

編碼:escape(string)

解碼:(string)

這兩個函數在JavaScript和Asp裡都存在,而且功能完全一樣,只要任何一端向另一端傳數據,都先用escape進行編碼,接收的一端用進行解碼即可確保Javascript和Asp資料傳遞過程中不會出現亂碼!

在後端是PHP程式的情況下,保持前端Javascript和PHP之間傳值的統一編碼可以使用以下函數進行處理:

WEB前端JavaScript

編碼:encodeURI(string)

解碼:decodeURI(string)

WEB後端Php

編碼:urlencode(string)

解碼:urldecode( string)

同樣,傳值的時候使用對應的編碼函數encodeURI或urlencode,接收的時候使用對應的解碼函數decodeURI或urldecode,即可保證Javascript和Php資料傳遞過程中不會出現亂碼!

在WEB前端Javascript解碼,Php裡urlencode編碼的資料時,可能需要使用兩次解碼,如:(decodeURI(string)),用來解一些非字元類別的文字,如標點符號等等。

相關學習推薦:

程式設計影片

以上是javascript傳遞中文亂碼給PHP怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn