0

I want to know how to solve this issue, I have a problem with the saving value of the custom attribute, i referred to this tutorial .I had done the same thing as the tutorial thats why I didn't put my code. So when i create or edit an account he dont save the value of this custom attribute, but when i edit it manually in a backend and i save, i can get it in front !

The field that doesn't set value:

<li>
   <label for="w_telephone"><?php echo $this->__('Telephone') ?></label>
      <div class="input-box">
         <input type="text" name="w_telephone" id="w_telephone" value="<?php echo $this->htmlEscape($this->getCustomer()->getWTelephone()) ?>" title="<?php echo $this->__('Telephone') ?>" class="input-text" />
      </div>
</li>

the new one for testing:

<li>
   <label for="w_pincode" class="required"><em>*</em><?php echo $this->__('Code pin') ?></label>
      <div class="input-box">
        <input type="text" name="w_pincode" id="w_pincode" value="<?php echo $this->escapeHtml($this->getCustomer()->getWPincode()) ?>" title="<?php echo Mage::helper('core')->quoteEscape($this->__('Code pin')) ?>" class="input-text required-entry" />
      </div>
</li>

I tried to add a new one for testing, this new one "w_pine" works fine but not that of before "w_telephone".

8
  • did you add the form field to relevant form
    – Mujahidh
    Feb 19, 2017 at 4:11
  • once print your post request in proper controller and find that your field is in request with value or not Feb 19, 2017 at 6:35
  • Update your controller saveAction
    – Magento 2
    Feb 19, 2017 at 6:40
  • Logout admin and then try Feb 19, 2017 at 8:39
  • Look my edit please, yes i have my form field @Mujahidh i checked all parameters in navigator and he set the value of telephone field @ Gopal Patel Why i should update the savAction() ? @ Kothari the samthing doesnt work @ Supravat
    – PЯINCƎ
    Feb 19, 2017 at 10:06

1 Answer 1

0

I solved my problem, i hade some lines commented in my install script

<?php
$installer = $this;

$installer->startSetup();
$setup = new Mage_Eav_Model_Entity_Setup('core_setup');

$entityTypeId     = $setup->getEntityTypeId('customer');
$attributeSetId   = $setup->getDefaultAttributeSetId($entityTypeId);
$attributeGroupId = $setup->getDefaultAttributeGroupId($entityTypeId, $attributeSetId);

$installer->addAttribute("customer", "w_telephone",  array(
    "type"     => "varchar",
    "backend"  => "",
    "label"    => "Telephone",
    "input"    => "text",
    "source"   => "",
    "visible"  => true,
    "required" => true,
    "default" => "",
    "frontend" => "",
    "unique"     => true


));

$attribute   = Mage::getSingleton("eav/config")->getAttribute("customer", "w_telephone");


$setup->addAttributeToGroup(
    $entityTypeId,
    $attributeSetId,
    $attributeGroupId,
    'w_telephone',
    '999'  //sort_order
);

$used_in_forms=array();
//these lines start
$used_in_forms[]="adminhtml_customer";
$used_in_forms[]="checkout_register";
$used_in_forms[]="customer_account_create";
$used_in_forms[]="customer_account_edit";
$used_in_forms[]="adminhtml_checkout";
//these lines end
$attribute->setData("used_in_forms", $used_in_forms)
    ->setData("is_used_for_customer_segment", true)
    ->setData("is_system", 0)
    ->setData("is_user_defined", 1)
    ->setData("is_visible", 1)
    ->setData("sort_order", 100)
;
$attribute->save();
$installer->endSetup();

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.