[英]Loading text file in Javascript adds unexpected extra hidden characters
[英]Ajax send and adds hidden characters
我想從一個PHP站點向另一個站點發送內容。 在第一個站點上,一切似乎都很好。 字符串看起來像
--show =“ author,book,text / n
但是當我收到后檢查字符串時,它看起來像
--show =“ author,book,text / r / n
存在問題,它最終以某種方式添加了/r
。
第一個php:
$(document).ready(function() {
$("#column_button").click(function(){
var selected = [];
$.each($("input[name='checkbox_columns']:checked"), function(){
selected.push($(this).val());
});
var data = new FormData();
data.append("data", "--show=" + selected);
//alert(JSON.stringify(selected));
var ajax = (window.XMLHttpRequest) ? new XMLHttpRequest() : new activeXObject("Microsoft.XMLHTTP");
ajax.addEventListener("load", statusHandler2, false);
ajax.open( 'post', 'showParameter.php', true );
ajax.send(data);
_("column_button").disabled=true;
});
});
第二個php:
if(!empty($_POST['data'])){
$data = $_POST['data'];}
所以選擇顯示它正確,但是如果我在第二個php中檢查$ data,那是錯誤的。
當服務器使用不同的行尾類型時,這似乎是一個問題。 Unix系統(Linux,BSD等)默認情況下使用\\n
( LF
),MacOS使用\\r
( CR
),而Windows系統使用\\r\\n
(也稱為CRLF
)。 您可能需要將其中一台服務器上的字符編碼更改為另一台。
CR
=回車LF
=換行
您可以使用僅用LF代替CRLF或CR的代碼。 此頁面顯示了如何簡單地實現這一目標。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.