Magento密码重置无法正常工作

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Magento密码重置无法正常工作相关的知识,希望对你有一定的参考价值。

我有一个Magento网店(1.9.2.3。),有很多注册客户。当转到我的帐户 - >忘记密码时,注册客户可以填写他/她的电子邮件地址。点击“发送”按钮时,商店会显示“服务器错误500”。

它是唯一出现错误的地方。可能是什么问题?该怎么做才能解决这个问题?

这是页面,您可以尝试使用我的电子邮件:pvanremmen@prsocial.nl https://www.hoesjesonline.nl/customer/account/forgotpassword/

我希望有一个解决方案。

PS:问题在于Magento 1.9.2.2,刚刚升级到1.9.2.3并且它仍然存在。

更新:日志错误:[Mon Jan 25 15:14:00.768731 2016] [:error] [pid 10335] [client 77.172.241.31:62120] php致命错误:在非对象上调用成员函数getBackend()在/home/hoesjeson/domains/hoesjesonline.nl/public_html/app/code/core/Mage/Eav/Model/Entity/Abstract.php第1548行,referer:https://www.hoesjesonline.nl/customer/account/forgotpassword/ [Mon Jan 25 15:14:34.977753 2016] [ :错误] [pid 9480] [客户端77.172.241.31:62129] PHP致命错误:在/home/hoesjeson/domains/hoesjesonline.nl/public_html/app/code/中的非对象上调用成员函数getBackend() 1548行的core / Mage / Eav / Model / Entity / Abstract.php,referer:https://www.hoesjesonline.nl/customer/account/forgotpassword/

答案

自Magento 1.9.2.2起,需要使用忘记密码表单发送表单密钥。

在您的模板customer / form / forgotpassword.phtml中:

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

就在<form action="...">标签下。刷新缓存并查看页面中是否存在带有表单键的隐藏输入。

希望这会解决你的问题:)

另一答案

从您的主题中打开客户/表单/ forgotpassword.phtml。请先检查表格行动。它应该是baseurl + customer / account / forgotpasswordpost /

<form action="baseurl+/customer/account/forgotpasswordpost/">

现在检查表单键是否存在。如果表单键不存在,则在表单标记之间放置一行。

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

别忘了刷新缓存。希望它能帮到你。

另一答案

好的,我找到了开发人员的解决方案。升级Magento版本后,数据库中的客户表格有点腐败。重建数据库中的客户表就行了!

另一答案

您可以尝试此修复,转到主题的布局/ customer.xml并添加:

<customer_account_changeforgotten translate="label">
    <label>Reset a Password</label>
    <remove name="right"/>
    <remove name="left"/>

    <reference name="head">
        <action method="setTitle" translate="title" module="customer">
            <title>Reset a Password</title>
        </action>
    </reference>
    <reference name="root">
        <action method="setTemplate">
            <template>page/1column.phtml</template>
        </action>
        <action method="setHeaderTitle" translate="title" module="customer">
            <title>Reset a Password</title>
        </action>
    </reference>
    <reference name="content">
        <block type="customer/account_changeforgotten" name="changeForgottenPassword" template="customer/form/resetforgottenpassword.phtml"/>
    </reference>
</customer_account_changeforgotten>

更多细节:http://www.dudesquare.nl/blog/2015/11/03/reset-password-blank-page-magento-1-9-2-2/

以上是关于Magento密码重置无法正常工作的主要内容,如果未能解决你的问题,请参考以下文章

Magento密码重置不起作用

sql Magento - 重置密码

使用 ASP.NET 身份重置密码时令牌无效

Magento 2.3 在本地主机中无法正常工作

无法为 Django 的重置密码流程创建集成测试

无法在 MVC 5 项目中生成密码重置令牌?