Клиент не может войти

12

Я только что перенес свой сайт. Но у меня проблема.

Мои клиенты не могут войти в свой аккаунт. При нажатии войти на страницу входа. http://www.mywebsite.com/customer/account/login/ Необходимо войти в свою учетную запись, но он перенаправляет ту же страницу.

Я очень плохо знаком с magento. Пожалуйста, помогите мне, как это исправить?

Наттапонг Лип Киатмонгколлерт
источник
Версия Magento?
Фабиан Блехшмидт
@FabianBlechschmidt 1.8.1 Сэр
Nattapong Lip Kiatmongkollert

Ответы:

20

У вас есть собственный шаблон и он работал в 1.7? В 1.8.1 были добавлены form_keys, поэтому, пожалуйста, проверьте свой пользовательский шаблон для этой строки:

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

если он отсутствует, добавьте его как в

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

И проверьте все остальные формы после обновления:

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

Фабиан Блехшмидт
источник
Уважаемый сэр, у меня нет собственного шаблона. Я не трогал основной файл. И <? Php echo $ this-> getBlockHtml ('formkey'); ?> не пропал. Любое предложение?
Nattapong Lip Kiatmongkollert
1
Пожалуйста, перестаньте называть меня сэр :) И нет, была единственная идея, которая у меня была :-(
Фабиан Блехшмидт
1
это проблема, которую я описал ;-) Отлично, вы исправили это!
Фабиан Блехшмидт
В любом случае, спасибо за вашу помощь. Очень рад. :)
Nattapong Lip Kiatmongkollert
4

http://www.blueclawsearch.co.uk/blog/2013/12/12/fix-customer-cannot-login-to-magento-1-8-1/ это решение проблемы

Вот что говорит ссылка выше:

  • Перейти к template/customer/form/login.phtmlи template/persistent/customer/form/login.phtmlи под

    <ul class="form-list">
  • Добавьте следующий код в форму входа

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

Если вы используете форму входа в разных шаблонах, то добавьте также form_keyи другие части.

Наттапонг Лип Киатмонгколлерт
источник
5
Ничто, кроме ссылки на решение, не подходит на сайтах Stack Exchange, поскольку оно может стимулировать спам по ссылкам. Кроме того, внешние ссылки могут измениться со временем, тормозя это «решение». Пожалуйста, опубликуйте решение здесь и, если хотите, укажите ссылку на источник.
Шанемгрей
Как предупредил shaneveeg, ссылка теперь разорвана, оставляя всех нас в этом состоянии .
toon81
1

Я сделал это в /app/Mage/Customer/controllers/AccountController.php

Я внес эти изменения, и это стало работать для меня

/**
 * 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()
        ));
    }
Кешав Калра
источник