2010-11-13 29 views
1

我使用的是magento 1.3.1。在使用信用卡付款時,我收到了一個名爲「未定義」的JavaScript警報。我使用ANZ作爲支付網關。錢被扣除,但沒有反映在管理面板中。有趣的是,當我使用PayPal支付時,它是完美地工作。magento 1.3.1未定義提醒錯誤只在信用卡結帳但不支付寶支付

請你能告訴我我該如何解決這個問題?

+0

重複http://stackoverflow.com/questions/4134419/magento-1-3-1-undefined-alert-error自從上次提問以來,你有什麼嘗試過? – clockworkgeek 2010-11-13 13:19:53

+0

我改變了1 /內存,2 /問服務器傢伙3 /實現了paypal 4 /禁用模塊 – jaram 2010-11-13 13:26:00

+0

檢查您的例外日誌文件 – 2010-11-13 20:10:28

回答

2

這是一個JavaScript警報,對吧?如果是這樣的......

注入一些JavaScript到你的頁面呈現,它覆蓋報警功能(不是Magento的覆蓋,一個JavaScript替代。

var originalAlert = alert; 
alert = function(a) 
{ 
    originalAlert("Woah, science!"); 
    originalAlert(a); 
} 

添加

debugger; 

語句將新提醒功能

var originalAlert = alert; 
alert = function(a) 
{ 
    debugger; 
    originalAlert(a); 
} 

執行觸發眉毛警報的動作呃有一個調試器(螢火蟲,鉻)

當調試器觸發,你會看到上下文中的警報。退出警報並嘗試找出警報中存在未定義變量的原因。這將指出你的問題。

(搜索JavaScript警告代碼庫將是值得一試,但上面是保證你找到合適的最佳途徑之一。)

如果你不知道如何在這個崗位做什麼,你有新的問題要問這裏。

如果你不願意這樣做,這不是你正在尋找的社區。

3

該錯誤是由AJAX響應不返回有效的JSON引起的。像Alan建議的那樣獲取類似Firebug或Chrome的內容,並觀看網絡視圖,以便在您逐步結帳時查看AJAX請求。在saveOrder(最後一步,你得到錯誤)檢查它的內容,而不是JSON我敢打賭,你會看到一個PHP錯誤和堆棧跟蹤。這是解決問題的線索,但如果您不明白,請將其添加到您的問題中。

從邏輯上說,錯誤必須發生在ANZ向信用卡收費之後,但在Magento將事務提交給它的數據庫之前,因爲發生錯誤時事務會回滾。

要解決此問題,您應該考慮聯繫ANZ eGate(Fontis)的作者並請求幫助進行調試。