Есть div в html разметке в нем лежит корзина пользователя. Мне надо как то передавать этот div в файл send-mail.php, помогите пожалуйста
1. Создать шаблон
2. Рендерить его на сайте и в письме
100% не надо его передавать… это всего лишь ваши предположения
в адекватных CMS и сайтах — текст писем формируется исключительно на стороне сервера и на основе неких шаблоновно если уж очень хочется —
берете нужный див и отправляете с помощью js на сервер, например такКод (Javascript):
var cart = $(‘#cart-wrapper’);Код (Javascript):
$.post( «send-mail.php», function( cart) { alert(‘отправлено’); });
А можно пожалуйста ссылку на какой то туториал?
Например: https://stackoverflow.com/questions/3706855/send-email-with-a-template-using-php
Я извиняюсь. А деньги по email долго идут?
Не помогает
— Добавлено —Вот php код с отправкой письма
PHP:
<?php $doc = new DomDocument; $doc->validateOnParse = true; require_once(‘phpmailer/PHPMailerAutoload.php’); $mail = new PHPMailer; $mail->CharSet = ‘utf-8’; $cart = $_POST[‘cart’]; $name = $_POST[‘name’]; $phone = $_POST[‘phone’]; $adress = $_POST[‘adress’]; $mail->isSMTP(); $mail->Host = ‘smtp.mail.ru’; // Specify main and backup SMTP servers $mail->SMTPAuth = true; $mail->Username = ‘vkus.orders.sender@mail.ru’; $mail->Password = ‘gd7bxq5UnWthgRQHhucN’; $mail->SMTPSecure = ‘ssl’; $mail->Port = 465; $mail->setFrom(‘vkus.orders.sender@mail.ru’); $mail->addAddress(‘petrov-danil230@mail.ru’); $mail->Subject = ‘Заказ’; $mail->Body = ‘<html> <head> <title>’.$subject.‘</title> </head> <body> <p>Имя: ‘.$name.‘</p> <p>Номер телефона: ‘.$phone.‘</p> <p>Адрес: ‘.$adress.‘</p> <p>Корзина: ‘.$cart.‘</p> </body> </html>’; if(!$mail->send()) { echo ‘Error’; } ?>и js код корзины
Код (Javascript):
const cartWrapper = document.querySelector (‘.cart-wrapper’) window.addEventListener(‘click’, function (event) { if (event.target.hasAttribute(‘data-cart’)) { const FoodCard = event.target.closest(‘.food’); //Собираем данные с карточки const productInfo = { id: FoodCard.dataset.id, imgSrc: FoodCard.querySelector(‘.food_png’).getAttribute(‘src’), title: FoodCard.querySelector(‘.item-title’).innerText, weight: FoodCard.querySelector(‘.pr_weight’).innerText, price: FoodCard.querySelector(‘.pr_price’).innerText, counter: FoodCard.querySelector(‘[data-counter]’).innerText, } const itemInCart = cartWrapper.querySelector(‘[data-id=»‘ + productInfo.id + ‘»]’); if (itemInCart) { const counterEl = itemInCart.querySelector(‘[data-counter]’) counterEl.innerText = parseInt(counterEl.innerText) + parseInt(productInfo.counter); } else { const cartItemHTML = ` //ТУТ HTML РАЗМЕТКА КАРТОЧКИ ТОВАРА// `; cartWrapper.insertAdjacentHTML(‘beforeend’, cartItemHTML) } //Отображение статуса корзины cart_status(); cart_price(); } const btn = document.querySelector(‘#send’); btn.addEventListener(‘click’, function(){ $.post(‘send-mail.php’, { cart: cartWrapper, }); }) })
а что не помогает то?