Cliente não pode fazer login

12

Acabei de migrar meu site. Mas eu tenho um problema.

Meus clientes não podem fazer login na conta deles. Quando clicar em fazer login na página de login. http://www.mywebsite.com/customer/account/login/ Ele deve fazer login na conta deles, mas redireciona a mesma página.

Eu sou muito novo no magento. Por favor me ajude como consertar isso?

Nattapong Lip Kiatmongkollert
fonte
Versão Magento?
Fabian Blechschmidt
@FabianBlechschmidt 1.8.1 Sir
Nattapong Lip Kiatmongkollert

Respostas:

20

Você tem um modelo personalizado e funcionou na versão 1.7? No 1.8.1, form_keys foram adicionadas; portanto, verifique seu modelo personalizado para esta linha:

<?php echo $this->getBlockHtml('formkey'); ?>

se estiver faltando, adicione-o como em

/app/design/frontend/base/default/template/persistent/customer/form/login.phtml

E verifique todos os outros formulários após a atualização:

https://gist.github.com/drobinson/7913822

Fabian Blechschmidt
fonte
Caro senhor, não tenho um modelo personalizado. Não toquei no arquivo principal. E <? Php echo $ this-> getBlockHtml ('formkey'); ?> não está faltando. Alguma sugestão?
Nattapong Lip Kiatmongkollert
1
Por favor, pare de me chamar de senhor :) E não, foi a única idéia que tive :-(
Fabian Blechschmidt
1
este é o problema que descrevi ;-) Ótimo, você resolveu!
Fabian Blechschmidt
De qualquer forma, obrigado pela sua ajuda. Muito feliz. :)
Nattapong Lip Kiatmongkollert
4

http://www.blueclawsearch.co.uk/blog/2013/12/12/fix-customer-cannot-login-to-magento-1-8-1/, esta é uma solução para o problema

Aqui está o que o link acima tem a dizer:

  • Ir para template/customer/form/login.phtmle template/persistent/customer/form/login.phtmle sob

    <ul class="form-list">
  • Adicione o seguinte código no formulário de login

    <input type="hidden" name="form_key" value="<?php echo Mage::getSingleton('core/session')->getFormKey(); ?>" />

Se você estiver usando o formulário de login em diferentes modelos, também poderá adicionar o item form_keyàs outras partes.

Nattapong Lip Kiatmongkollert
fonte
5
Nada além de um link para uma solução não é apropriado nos sites Stack Exchange, pois pode incentivar o spam do link. Além disso, os links externos podem mudar com o tempo, travando essa 'solução'. Poste a solução aqui e faça referência ao link de origem depois, se quiser.
Shanemgrey
Como Shaneveeg advertiu, o link agora está quebrado, deixando o restante de nós nesse estado .
toon81
1

Eu fiz isso em /app/Mage/Customer/controllers/AccountController.php

Eu fiz essas mudanças e começou a trabalhar para mim

/**
 * Login post action
 */
public function loginPostAction()
{

    // generate form_key if missing or invalid
    if (!($formKey = $this->getRequest()->getParam('form_key', null))
            || $formKey != Mage::getSingleton('core/session')->getFormKey()) {
        $this->getRequest()->setParams(array(
            'form_key' =>Mage::getSingleton('core/session')->getFormKey()
        ));
    }
Keshav Kalra
fonte