Hi Everyone and thanks for reading ,
I have just updated my theme to the latest xichieg version, Magento is still 1.9.1.1
During One Page Checkout, after choosing payment, when I click on "Continue" nothing happens.
Checkout progress information remains, checkout stays on step 4 and if I click again on the Continue button, nothing happens.
I am stuck from a couple of days and can't find answer anywhere.
I have checked
skin/frontend/base/default/js/opcheckout.js
$('checkout-payment-method-load')
is not null after clicking "continue", contains HTML obj
checkout/onepage/payment/info.phtml
<dl class="sp-methods" id="checkout-payment-method-load"> <!-- Content dynamically loaded. Content from the methods.phtml is loaded during the ajax call --> </dl>
layout/checkout.xml
<block type="checkout/onepage_payment_methods" name="checkout.payment.methods" as="methods" template="checkout/onepage/payment/info.phtml">
after reading as much as I could from recent issues posted here, the files contains the correct statements but will post full contents if needed.
I do not have the "heared4us" module
Does someone have any idea?
Thanks a lot for any type of help.
GV
Solved! Go to Solution.
Hello there, solution found:
In the xmls files for the translations in /app/locale, some lines were written wrong, usually the xml files are:
"<english>","<other language>"
if you miss a " or you put the comma in the wrong position, or basically if you write the lines not correctly, magento might brake, and some of the lines in the checkout translation file were wrong so it broke in the checkout phase.
FYI, if in translation file you need to escape the ", you need to put "", so in the end/beginning of a line which needs " during translation, you will find
"<english ending with double quotes>""","<translation ending with double quotes>""" """<english starting with double quotes>","""<translation starting with double quotes>"
Thanks everyone for your support.
Magento requests your head sometimes
Hello pvirzi,
In opcheckout.js:
... gotoSection: function (section, reloadProgressBlock) { if (reloadProgressBlock) { this.reloadProgressBlock(this.currentStep); } this.currentStep = section; var sectionElement = $('opc-' + section); sectionElement.addClassName('allow'); this.accordion.openSection('opc-' + section); if(!reloadProgressBlock) { this.resetPreviousSteps(); } }, ...
Magento will find the next id "opc-<name_section>" HTML element. By default Magento, there are 6 elements: opc-login, opc-billing, opc-shipping, opc-shipping_method, opc-payment, opc-review. A response from a step:
{"goto_section":"payment","update_section":{"name":"payment-method","html":" content here"}}
=> "goto_section" : <name_section>
You should check the response of every step. I think you can figure out your problem. Additionally, when customizing template, you delete some default fields in steps, you should care this.
Hello MrKhoa99
Thank you very much for your reply
I have checked all responses, the ones I am getting from magento are:
saveBilling
saveShippingMethod
savePayment
In particular, There is no response for savePayment
Maybe I am asking too much, but is it something I need to change in opcheckout.js?
Or is it something somewhere else?
I have been trying to troubleshoot this problem but I just got confused on how magento works.
Thank you very much for you patience!
GV
Hello pvirzi,
Yes, Magento is complicated platform. You must spend so much time to understand it.
Back to your issue, you try:
if you changed your template shipping method or payment phtml, you should revert back.
Hello there, solution found:
In the xmls files for the translations in /app/locale, some lines were written wrong, usually the xml files are:
"<english>","<other language>"
if you miss a " or you put the comma in the wrong position, or basically if you write the lines not correctly, magento might brake, and some of the lines in the checkout translation file were wrong so it broke in the checkout phase.
FYI, if in translation file you need to escape the ", you need to put "", so in the end/beginning of a line which needs " during translation, you will find
"<english ending with double quotes>""","<translation ending with double quotes>""" """<english starting with double quotes>","""<translation starting with double quotes>"
Thanks everyone for your support.
Magento requests your head sometimes
I dont know how much this will help but this exact broken checkout was started after I enabled following option, "Enable Form Key Validation On Checkout" on intimation by magento itself.
To disable it and repair checkout.do following.
Settings > Coniguration > Advanced + Admin > Security > Disable "Enable Form Key Validation On Checkout"
Worked for me. Please acknowledge it it helps
Thanks for posting your solution @indiacam, it saved us a lot of time!
The best solution was this, to correct this error in Magento 1.9.3.8
The best solution was this, to correct this error in Magento 1.9.3.8
The best solution was this, to correct this error in Magento 1.9.3.8
Hello,
This method worked for me but I am getting an notification that "Formkey validation on checkout disabled. This may expose security risks. We strongly recommend to Enable Form Key Validation On Checkout in Admin / Security Section, for protect your own checkout process."