<label class="label btn" for="file"> Загрузить<input enctype="multipart/form-data" class="answer5 file" name="answer5" id="file" type="file" placeholder="Загрузить" value="Загрузить"></label>
JS
var file;
$(".fail").onchange(function(){
file = $('.file')[0].files[0];
)
function endtest() {
const formData = new FormData;
formData.append("ebody", `<h3>Телефон: ${tel}</h3><h3>Вопрос0: ${answer1}</h3><h3>Вопрос1: ${answer2}</h3><h3>Вопрос2: ${answer3}</h3><h3>Вопрос3: ${answer4}</h3><h3>Вопрос4: ${answer5}</h3><h3>Вопрос6: ${answer6}</h3>`);
formData.append("file", file);
$.ajax({
type: "POST"
, url: "test.php"
, data: formData
, processData: false
, cache: false
, contentType: false
, dataType: "json"
}).done(function () {
$("#message-send-ok").addClass("active");
}).fail(function (xhr, textStatus, errorThrown) {
alert(xhr.responseText);
});
}
PHP
<?php
$from = "<Фаворит>";
if (isset($_POST['ebody'])) {$ebody = $_POST['ebody'];}
$mailTo ="g@mail.ru";
$file = $_FILES['file']['name'];
// от кого
$subject = "Прошел тест"; // тема письма
$message = $ebody; // текст письма
$r = sendMailAttachment($mailTo, $from, $subject, $message, $file); // отправка письма c вложением
echo ($r)?'':'';
function sendMailAttachment($mailTo, $from, $subject, $message, $file = false){
$separator = "---"; // разделитель в письме
// Заголовки для письма
$headers = "MIME-Version: 1.0\r\n";
$headers .= "From: $from\nReply-To: $from\n"; // задаем от кого письмо
$headers .= "Content-Type: multipart/mixed; boundary=\"$separator\""; // в заголовке указываем разделитель
// если письмо с вложением
if($file){
$bodyMail = "--$separator\n"; // начало тела письма, выводим разделитель
$bodyMail .= "Content-type:text/html; charset = utf-8\r\nFrom:$email"; // кодировка письма
$bodyMail .= "Content-Transfer-Encoding: quoted-printable"; // задаем конвертацию письма
$bodyMail .= "Content-Disposition: attachment; filename==?utf-8?B?".base64_encode(basename($file))."?=\n\n"; // задаем название файла
$bodyMail .= $message."\n"; // добавляем текст письма
$bodyMail .= "--$separator\n";
$fileRead = fopen($file, "r"); // открываем файл
$contentFile = fread($fileRead, filesize($file)); // считываем его до конца
fclose($fileRead); // закрываем файл
$bodyMail .= "Content-Type: application/octet-stream; name==?utf-8?B?".base64_encode(basename($file))."?=\n";
$bodyMail .= "Content-Transfer-Encoding: base64\n"; // кодировка файла
$bodyMail .= "Content-Disposition: attachment; filename==?utf-8?B?".base64_encode(basename($file))."?=\n\n";
$bodyMail .= chunk_split(base64_encode($contentFile))."\n"; // кодируем и прикрепляем файл
$bodyMail .= "--".$separator ."--\n";
// письмо без вложения
}else{
$bodyMail = $message;
}
$result = mail($mailTo, $subject, $bodyMail, $headers); // отправка письма
return $result;
}
?>
formData.append("file", $('.file')[0].files[0]);
var file
- локальная переменная внутри обработчика change
, ее не видно внутри функции endtest
.
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Всех приветствую,есть сайт как запретить пользователям ходить по каталогам ну например открыл сайт попал на indexphp и допустим он ввел в адресную...
взял две библиотеки для шифрования в RSA: phpseclib/phpseclib liamylian/x-rsa
На моём бесплатном хостинге не работает та часть PedBean php что отвечает за внесения и изменения данных, по этому эту часть хочу перевести на mysql запросынашёл...
Есть таблица с товарами goodsОна связана с таблицей categories (многие ко многим), также с таблицей goods_filter_value (многие ко многим)