Below i have added the code to upload photo. Well i have added photo upload in edit.phtml page only but in register.phtml magento showing error. Can anyone fix it ?
error message : Wrong entity ID.
app/design/frontend/default/blue/template/customer/form/register.phtml
<?php
$setup = new Mage_Eav_Model_Entity_Setup('core_setup');
$attr2 = array (
'position' => 1,
'is_required'=>1
);
$setup->addAttribute(’61’, ‘photo’, $attr2);
?>
app/design/frontend/default/blue/template/customer/form/edit.phtml
<li class="field">
<label for="photo" class="required " ><?php echo $this->__('Photo') ?></label>
<div class="required-entry input-text">
<input type="file" name="photo" id="photo" value="<?php echo $this->htmlEscape($this->getCustomer()->getPhoto()) ?>" title="<?php echo $this->__('Photo') ?>" class="required-entry input-text" />
</div>
app/code/core/Mage/Customer/Model/Entity/Setup.php
'photo' => array(
'label' => 'Photo1',
'required' => false,
'sort_order' => 61,
),
app/code/core/Mage/Customer/etc/config.xml
<photo1><create>1</create><update>1</update></photo1>
app/code/core/Mage/Customer/controllers/AccountController.php
$logoName = '';
if (isset($_FILES['photo']['name']) && $_FILES['photo']['name'] != '') {
try {
$uploader = new Varien_File_Uploader(‘photo1‘);
$uploader->setAllowedExtensions(array(‘jpg’,’jpeg’,’gif’,’png’));
$uploader->setAllowRenameFiles(false);
$uploader->setFilesDispersion(false);
$path = Mage::getBaseDir(‘media’) . DS.’customer’.DS;
$logoName = $_FILES['photo']['name'];
$uploader->save($path, $logoName);
} catch (Exception $e) {
}
}
if (!$customer = Mage::registry(‘current_customer’)) {
$customer = Mage::getModel(‘customer/customer’)
->setEmail($this->getRequest()->getPost(‘email’))
->setPhoto($logoName) //Add this
->setPassword($this->getRequest()->getPost(‘password’))
->setConfirmation($this->getRequest()->getPost(‘confirmation’))
->setId(null);
}
No comments:
Post a Comment