Сохранить предыдущие данные клиента - PullRequest
1 голос
/ 16 августа 2010

Я создал страницу с калькулятором для клиента, он может использовать ее без входа в систему, на этой странице есть кнопка «Сохранить», и я пытаюсь сделать следующее: если клиент нажимает «Сохранить», и этоне вошел в систему, будет перенаправлен в форму регистрации, и если пользователь успешно зарегистрируется, мне нужно сохранить данные, которые он написал в калькуляторе, в свой аккаунт и снова перенаправить в калькулятор.Я добавил новые атрибуты для клиента

$setup = new Mage_Eav_Model_Entity_Setup('core_setup');
$setup->addAttribute('customer', 'weight', array(
    'label'=> 'Weight',
    'type'=> 'decimal',
    'input'=> 'text',
    'visible'=> true,
    'required'=> false,
));
$setup->addAttribute('customer', 'Height', array(
    'label'=> 'Height',
    'type'=> 'decimal',
    'input'=> 'text',
    'visible'=> true,
    'required'=> false,
    'position'=> 1,
));

И если я запускаю этот код, он работает, потому что я могу видеть значение в базе данных

$session = Mage::getSingleton('customer/session');
$customer = $session->getCustomer();
$customer->setWeight(80);
$customer->save();

Но моя проблема заключается вкак я собираю все данные калькулятора

1 Ответ

1 голос
/ 16 августа 2010

после нескольких часов написания кода, я отвечу на свой вопрос, если кто-то может исправить меня, я буду благодарен ...
Итак, что я сделал:

$session = Mage::getSingleton('customer/session');
if (!$session->isLoggedIn()) {
    $session->setHeight($this->getRequest()->getPost('height'));
}

теперь, в createPostAction я добавляю это

if(isset($session->getHeight)){
    $customer->setHeight($session->getHeight);
}
$session->setHeight('');

все работает хорошо ... в любом случае спасибо всем, кто прочитал мой вопрос

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...