[英]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.