我刚刚为我的HEBREW网站编写了用于快速结账的PHP脚本(数据库编码为latin_swedish_ci,浏览器编码为windows-1255,文件用ANSI编写,带有notepad ++)。
当我将数据(用希伯来语写成)从数据库传递到贝宝时,而不是文本,我看到了问号。当我在文本上使用utf8_encode时显示出乱码。
没有utf8_encode:
使用utf8_encode:
有什么想法吗?
答案 0 :(得分:3)
关键是通过引用的步骤
在您的帐户中设置UTF-8
- 登录您的PayPal帐户
- 导航至"我的帐户概述 - >个人资料 - >我的销售工具"部分。 在"更畅销的工具"点击"贝宝按钮语言 编码"链接。
- 确保设置"您网站的语言"是 正确。
- 点击"更多选项"按钮,选择" UTF-8"选项 for" Encoding"离开"是"为&#34选择的选项;您想要吗? 对从PayPal发送给您的数据使用相同的编码(例如, IPN,可下载的日志,电子邮件)?"。
- 点击"保存"保存更改。
醇>
或者,您可以在setExpressCheckout API有效负载中添加LocaleCode = he_IL
,以便将结帐页面语言更改为希伯来语
答案 1 :(得分:1)
您可以尝试以下方法:
<meta charset="utf-8">
中设置<head>
。utf-8
。登录您的PayPal帐户 点击'我的销售偏好 单击语言编码旁边的更新 在下一页上选择西欧语言,然后单击更多选项 在两个下拉菜单中选择UTF-8并单击保存
答案 2 :(得分:0)
尝试在数据库中设置utf-8字符:
/* change character set to utf8 */将文件字符设置为UTF-8
if (!$mysqli->set_charset("utf8")) {
printf("Error loading character set utf8: %s\n", $mysqli->error);
}
我们的想法是将包含字符的每个元素设置为UTF-8
答案 3 :(得分:0)
您需要自定义paypal快速结账,特别是您的区域设置。要将PayPal页面上显示的语言更改为希伯来语,请在SetExpressCheckout调用中将 LOCALECODE
参数设置为 he_IL
。
来源:Customizing Express Checkout(向下滚动到更改区域设置部分)
请记住,您的数据库编码是UTF-8。在将文本发送到PayPal之前,您仍需要对文本进行utf8_decode。