2015-10-06 168 views
12

我剛寫完我的PHP腳本,用於我的HEBREW網站(數據庫編碼是latin_swedish_ci,瀏覽器編碼windows-1255,使用記事本++編碼的ANSI文件)的快速結帳。paypal express checkout - 付款頁中的問號

當我從數據庫向貝寶傳遞數據(用希伯來語寫成)時,而不是文本,我看到問號。當我在文本上使用utf8_encode時,它顯示爲亂碼。

沒有函數utf8_encode:

not utf8_encode

與函數utf8_encode:

with utf8_encode

任何想法?

+1

神聖莫利。你也許應該標準化你使用的字符集。優選unicode/utf-8。 – Amelia

回答

1

你可以嘗試以下方法:

  • <meta charset="utf-8">你的網頁的HTML <head>內。
  • 設置utf-8在您的PayPal帳戶。

到您的PayPal帳戶 點擊「我的銷售偏好 點擊更新旁邊的語言編碼 下一頁選擇西歐語言,並點擊更多選項 選擇在這兩個下拉menues登錄UTF- 8,然後點擊保存

+0

但是,如果我將編碼設置爲utf8而我的數據庫使用拉丁會幫助嗎? – Daniel

3

,關鍵是要設置UTF-8您的帳戶內,由援引步驟

  1. 登錄到PayPal賬戶
  2. 導航到「我的帳戶概覽 - >配置文件 - >我的銷售工具」部分。 在「更多銷售工具」中單擊「PayPal按鈕語言 編碼」鏈接。
  3. 確保「您網站的語言」的設置爲 正確。
  4. 單擊「更多選項」按鈕,爲「編碼」選擇「UTF-8」選項 ,並選擇「是」選擇「是否要 對從貝寶發送給您的數據使用相同的編碼(例如, IPN,可下載的日誌,電子郵件)?「。
  5. 點擊「保存」保存您的更改。

或者,您可以在您的setExpressCheckout API有效載荷增加LocaleCode = he_IL,改變結帳頁面語言希伯來語以及

0

嘗試設置你的數據庫裏面的UTF-8字符:

 
/* change character set to utf8 */ 
if (!$mysqli->set_charset("utf8")) {
printf("Error loading character set utf8: %s\n", $mysqli->error);
}

還使用您的記事本++設置文件字符爲UTF-8 enter image description here

這個想法是設置每個元素包含一個字符爲UTF-8

0

您需要自定義paypal express checkout,特別是您的區域設置。要將PayPal頁面上顯示的語言更改爲希伯來語,請在SetExpressCheckout調用中將LOCALECODE參數設置爲he_IL

來源:Customizing Express Checkout(向下滾動到更改區域部分)

請記住,你的數據庫編碼爲UTF-8。在發送給PayPal之前,您仍然需要utf8_解碼您的文本。

相關問題