2014-07-16 3 views
0

안녕하세요. 고객이 '비밀번호 분실'을 클릭하면 재설정 할 수있는 링크가있는 이메일이 전송됩니다. 이것을 클릭하면받는 오류입니다. 치명적인 오류 : /home/ishieldz/public_html/store/app/code/core/Mage/Customer/controllers/AccountController.php 750에있는 객체가 아닌 setCustomerId() 멤버 함수를 호출하십시오. 도움을 받으실 수 있습니다. . 고맙습니다!비밀번호를 잊어 버리면 magento 1.9.0.1에서 작동하지 않습니다.

/** * 표시 리셋 잊어 버린 암호 양식 * * 그가 암호 재설정 확인 이메일에서 해당 링크를 * / 공공 기능 resetPasswordAction() { 를 클릭하면 사용자가이 작업에 재 지정됩니다 $ resetPasswordLinkToken = (string) $ this-> getRequest() -> getQuery ('token'); $ customerId = (int) $ this-> getRequest() -> getQuery ('id'); 시도 { $ this -> _ validateResetPasswordLinkToken ($ customerId, $ resetPasswordLinkToken); $ this-> loadLayout(); // 수신 된 매개 변수를 재설정 된 비밀번호 재설정 양식에 전달 $ this-> getLayout() -> getBlock ('resetPassword') -> setCustomerId ($ customerId) -> setResetPasswordLinkToken ($ resetPasswordLinkToken); $ this-> renderLayout(); } catch (예외 $ 예외) { $ this -> _ getSession() -> addError ($ this -> _ getHelper ('고객') -> __ ('비밀번호 재설정 링크가 만료되었습니다.')); $ this -> _ redirect ('/*/forgotpassword'); } }

답변

0

우회 선언 된 개체를 호출 한 것 같습니다. 아마도 변수 일뿐입니다. 당신이

당신은 개체의 선언을 삽입해야

당신의 AccountController.php에 라인 (750) 전에 개체를 선언하는 경우 은 확인 (예 : $ 산부인과 = 새로운 고객을();)을 setCustomerId() 메소드를 포함 을 실행중인 메소드에 추가하십시오.

+0

위의 코드를 파일에서 추가했습니다. Magento 1.9.0.1 default – user3653702

0

magento에 로그인하십시오. 시스템, 디자인으로 이동하십시오. 현재 테마를 삭제 한 다음 다시 추가하십시오.

1

Magento 1.9.1 다음은 저에게 도움이되는 해결책입니다. 테마는 특정 사용자 지정 설정 또는 레이아웃 설정을 포함하지 않는 경우

당신은 /app/design/frontend/default/<your_theme_package>/<your_theme_name>/layout/customer.xml

If you delete this file magento will load the default config options (with the updates) from the factory default magento theme. /app/design/frontend/base/default/layout/customer.xml

에있는 파일을 안전하게 당신의 customer.xml을 삭제 (또는 customer1.xml하기 위해 이름을 변경) 할 수 있습니다 기억 관리 영역을 통해 자홍색 구성을 플러시/새로 고침하려면 customer.xml 파일을 강제로 다시로드해야합니다.

+0

이 문제가 해결되었습니다. –