【发布时间】:2012-05-02 21:35:03
【问题描述】:
我一直在尝试寻找一种方法将照片添加到 Magento 的客户资料中。 除了这个,他们什么都有,我在任何地方都找不到怎么做。 任何帮助表示赞赏。 我正在使用社区版。
【问题讨论】:
标签: magento
我一直在尝试寻找一种方法将照片添加到 Magento 的客户资料中。 除了这个,他们什么都有,我在任何地方都找不到怎么做。 任何帮助表示赞赏。 我正在使用社区版。
【问题讨论】:
标签: magento
要在 magento 中为客户上传个人资料照片,我们需要执行以下几个步骤。
以上链接可帮助您在数据库中添加新文件,您需要手动上传该照片,以下代码将帮助您在 magento 中上传照片。
if(isset($_FILES['logo']['name']) and (file_exists($_FILES['logo']['tmp_name'])))
{
try {
$uploader = new Varien_File_Uploader('logo');
$uploader->setAllowedExtensions(array('jpg','jpeg','gif','png'));
$uploader->setAllowRenameFiles(false);
$uploader->setFilesDispersion(false);
$path = Mage::getBaseDir('media') . DS .'catalog/customer/logo/';
$newName = time() . $_FILES['logo']['name'];
$uploader->save($path, $newName);
$customer->setLogo($newName);
// actual path of image
$imageUrl = $path . $newName;
// path of the resized image to be saved
// here, the resized image is saved in media/resized folder
$imageResized = $path . $newName;
// resize image only if the image file exists and the resized image file doesn't exist
// the image is resized proportionally with the width/height 135px
if (!file_exists($imageResized)&&file_exists($imageUrl)) :
$imageObj = new Varien_Image($imageUrl);
$imageObj->constrainOnly(TRUE);
$imageObj->keepAspectRatio(TRUE);
$imageObj->keepFrame(FALSE);
$imageObj->resize(150, 150);
$imageObj->save($imageResized);
endif;
}catch(Exception $e) {
}
}
上传后我们需要将文件名保存在数据库中。
$customer->setLogo($newName);
【讨论】: