프론트 엔드에서 양식 데이터를 받아서 데이터베이스에 저장하는 기본 모듈이 있습니다.Magento - 조치를 통해 전자 메일을 보내는 데 문제가 있습니다.
데이터를 성공적으로 저장 한 경우 전자 메일을 보내려합니다.
내가 이메일을 싶습니다는 가게 주인에 요청하실 수 있습니다 :
내가 수행 한 시도하고이 작업을 얻기 위해 다음
응용 프로그램/코드/지역/에어로/Catalogrequest/등 /config.xml
<template>
<email>
<request_brochure_email translate="label" module="Aero_Catalogrequest">
<label>Request a brochure</label>
<file>request_brochure.html</file>
<type>html</type>
</request_brochure_email>
</email>
</template>
및
<default>
<Aero_Catalogrequest>
<sendemail>
<template>request_brochure_email</template>
</sendemail>
</Aero_Catalogrequest>
</default>
나는에 템플릿 파일을 만든 : 응용 프로그램 /locale/en_US/template/email/request_brochure.html
<p>
{{var data.fname}}
</p>
그리고 이것은 내 IndexController.php 내 postAction이다
내 양식을 제출하면public function postAction()
{
$post = $this->getRequest()->getPost();
if ($post) {
$request = Mage::getModel('catalogrequest/catalogrequest');
$data = $this->getRequest()->getPost();
$data['time_added'] = now();
$data['country'] = $data['country_id'];
$data['ip'] = $_SERVER['REMOTE_ADDR'];
$data['fname'] = ucwords($data['fname']);
$data['lname'] = ucwords($data['lname']);
$data['address1'] = ucwords(str_replace(",", " ",$data['address1']));
$data['address2'] = ucwords(str_replace(",", " ",$data['address2']));
$data['city'] = ucwords($data['city']);
if(empty($data['region'])){
$data['state'] = Mage::getModel('directory/region')->load($data['state'])->getCode();
} else {
$data['state'] = $data['region'];
}
$postObject = new Varien_Object();
$postObject->setData($post);
// Validate
if(!$errors = $request->validate($data)){
MAGE::getSingleton('core/session')->addError($errors);
}
// Add to database
try {
$mailTemplate = Mage::getModel('core/email_template');
/* @var $mailTemplate Mage_Core_Model_Email_Template */
$mailTemplate->setDesignConfig(array('area' => 'frontend'))
->sendTransactional(
Mage::getStoreConfig(self::XML_PATH_SAMPLE_EMAIL_TEMPLATE),
Mage::getStoreConfig(self::XML_PATH_EMAIL_SENDER),
Mage::getStoreConfig(self::XML_PATH_EMAIL_RECIPIENT),
null,
array('data' => $data)
);
if (!$mailTemplate->getSentSuccess()) {
throw new Exception();
}
$request->setData($data)->save();
MAGE::getSingleton('core/session')->addSuccess($this->__('<h2>Thank you</h3> You can expect to receive your catalogue in 10-14 days.o. '));
$translate->setTranslateInline(true);
$this->_redirect('*/*/thanks');
} catch(Exception $e){
MAGE::getSingleton('core/session')->addError('Sorry, we\'ve had some trouble saving your request');
$this->_redirect('*/*/');
return;
}
}
return;
}
는, 데이터가 이메일 주소로 전송되지 않습니다 내가 관리자로 구성한 사람
내가 뭘 잘못하고 있는지 알 수있는 사람이 있습니까?
감사
난 당신이 주제를 설정할 필요가 있다고 생각
오류 메시지가 나타나면 $ e-> getMessage()를 포착하여 여기에 게시 할 수 있습니까? –