我有一个带有输入字段的应用,您可以在其中输入您的姓名。该应用程序使用FPDF输出pdf文档上的名称。由于这个应用程序是瑞典语,许多人会输入具有特殊字符的名称,如å,ä,ö。其中一个输入(一个人的名字)看起来像这样:
fromName = $.base64.encode($('#voucherName').val())
通过:
$.ajax({
url: frontend_ajax_object.ajaxurl,
type: "POST",
contentType: "application/x-www-form-urlencoded; charset=UTF-8",
data: 'action=wpgv_doajax_pdf_save_func&nonce='+nonce+'&template='+templates_id+'&for='+forName+'&from='+fromName+'&value='+voucherValue+'&message='+message+'&expiry='+expiry+'&code='+code+'&firstname='+firstName+'&lastname='+lastName+'&email='+email+'&address='+address+'&pincode='+pincode+'&paymentmethod='+paymentMethod,
success: function(a) {
window.location.replace(a);
},
error: function() {
alert('Error occured');
}
});
然后在php中对此进行解码:
$from = sanitize_text_field(base64_decode($_POST['from']));
但问题是当有人例如输入名字Björn时,特殊字符“ö”我会以怪异的垃圾字符显示。