2016-01-20 4 views
0

Я создал контактную страницу с приложением электронной почты. Я следил за учебником отсюда: http://www.blog.magepsycho.com/adding-upload-field-in-contact-form-and-send-as-attachment/.Magento Email Attachment: No Name

Форма контакта и приложение прекрасно работают, однако есть проблема.

Если я намеренно отправлю форму без прикрепления какого-либо файла, я все равно получаю файл привязки имени. Предположим, что нет приставки.

скриншот ниже:

Что с этим приложением электронной почты?

ответ

0

Если вы попытаетесь найти в строке 67-73, где он отправляет вложение, вы заметите оператор if, который проверяет, существует ли $ attachmentFilePath.

$attachmentFilePath = Mage::getBaseDir('media'). DS . 'contacts' . DS . $fileName; 
if(file_exists($attachmentFilePath)){ 

Это условие возвращает true, даже если пользователь ничего не добавил. Если вы напечатаете $attachmentFilePath, он даст вам полный путь. Когда пользователь отправляет электронную почту без вложения, $attachmentFilePath он предоставит вам путь до контакта с каталогом.

Попробуйте обновить, если условие этого

if($fileName){ 

Он будет проверять, если поле имеет значение и пропустить, если нет ни одного.