Как через форму загрузить файл и отправить на почту?
Здравствуйте все!
Возникла проблемка, т.к. я не владею программированием. К делу:
Есть форма на сайте:
<tr> <td colspan="2" align="center"> <p><input style="color:#05ff0a;" type="file" title="Загрузите документ" name="documents" accept="image/jpeg, application/pdf"><br> <span style="font-size: 12px; color: gray;">Возможно ....<br> ....</span></p> </td> </tr>
как прикрепить файл и его отправить на почту?
Частичный код PHP:
if (isset($_POST['documents'])) {$documents = $_POST['documents'];} if(isset($submit)): $filename = trim(html_filter($file_name)); /* Сюда впишите свою эл. почту */ $address = "dkp_noreply@lbolimp.ru"; /* А здесь прописывается текст сообщения, \n - перенос строки */ $mes = "Данные продавца \n\nФамилия, имя, отчество: $nameSeller \nДата рождения: $dateSeller \nПАСПОРТ: \nСерия: $nameSellerPS \nНомер: $nameSellerPN \nКем выдан: $nameSellerPI \nКод подразделения: $nameSellerPU \nДата выдачи: $dateSellerPI\n Адрес регистрации: $nameSellerAR\n\nДАННЫЕ ПОКУПАТЕЛЯ \n\nФамилия, имя, отчество: $nameBuyer \nДата рождения: $dateBuyer \nПАСПОРТ: \nСерия: $nameBuyerPS \nНомер: $nameBuyerPN \nКем выдан: $nameBuyerPI \nКод подразделения: $nameBuyerPU \nдата выдачи: $dateBuyerPI \nАдрес регистрации: $nameBuyerAR \n\nДАННЫЕ из ПТС \n\nПаспорт Транспортного Средства: \nсерия: $namePOtVS \nномер: $namePOtVN \nНаименование организации, выдавшей паспорт: $namePOtVOIP \nАдрес: $namePOtVAOIP \nДата выдачи паспорта: $datePOtV \n\nДАННЫЕ СТС \n\nСвидетельство о регистрации ТС: \nсерия: $nameRegCertS \nномер: $nameRegCertN \nРегистрационный знак: $nameRegCertRS \nИдентификационный номер (VIN): $nameRegCertVIN \nМарка, модель: $nameRegCertMM \nТип ТС: $nameRegCertTV \nКатегория ТС (ABCD, прицеп): $nameRegCertCV \nГод выпуска ТС: $nameRegCertYV\nМодель двигателя: $nameRegCertME \nДвигатель №:$nameRegCertNE \nШасси (рама) №:$nameRegCertCE \nКузов (коляска) №: $nameRegCertBN \nЦвет: $nameRegCertC \nМощность двигателя, кВт/л.с.: $nameRegCertPE \nРабочий объём двигателя, см3: $nameRegCertJVE \nРазрешённая max масса, кг: $nameRegCertMaxW \nМасса без нагрузки, кг: $nameRegCertRegCertMaxWL \nПаспорт ТС: \nсерия: $namePOtVS1 \nномер: $namePOtVN1 \n\nДАННЫЕ О ПЛАТЕЛЬЩИКЕ \n\nВаша фамилия: $nameDatPSurname \nВаше имя: $nameDatPName \nВаше отчество: $nameDatPMN \nЭл. почта: $email \nКонтактный телефон: $tel \nВаш заказ: $TCoSC \nКомментарий: $body \nДокумент: $documents"; /* А эта функция как раз занимается отправкой письма на указанный вами email */ //Если прикреплен файл if($filename!="" and $file_size>0): if(XMail($address,$TCoSC,$mes,$documents,$file)==1){header("Location:?send=ok");} endif; //Если Не прикреплен файл if($filename=="" or $file_size==0): if(EMail($address,$TCoSC,$mes)==1){header("Location:?send=ok");} endif; if ($send == 'true') { echo $a = "<br>\nТакже Вы можете воспользоваться ..... \n<br>\n<br>\n<a href='http://.....ru/usluga/.....><img src='http://.......ru/feedbackmess/image/....online(500x221).png' border=0 title='Перейти'></a><br>\n<br>\nСообщение успешно отправлено.<br><br>\nВы будете перенаправлены на форму оплаты в течении 10 секунд.<br>\n<br>\nЕсли не хотите ждать, <a href='http://......ru/...../'>нажмите на эту ссылку</a> чтобы перейти к оплате сразу."; } else { echo $a = "<a href='http:/..../feedback>'><img src='http://.../feedbackmess/image/...jpg' border=0 title='Перейти'></a><br>\nК большому разочарованию, Ваше сообщение не отправлено.<BR> По всей видимости вы что-то, где-то не указали в форме, <br>\nи Вы будете перенаправлены обратно в течении 10 секунд. <br>\nНо вы можете не ждать и самостоятельно вернуться обратно<br>\n Просто нажмите <a href=http://..../feedback>сюда</a>"; }
Если это делается на базе WP, а мы тут именно этот движок рассматриваем, то советую поставить плагин Contact Form 7, в нем Вы это реализуете в считанные минуты.
Вам вместо функции XMail (да и вместо EMail) нужно использовать встроенную функцию WordPress wp_mail().
Пример из описания, который как раз подходит под ваши нужды: