Есть форма, как отправить с нее инфу на почту? Озолочу)

siv1987
На сайте с 02.04.2009
Offline
427
#31

Что? Я вам пошаговаю инструкцию написал на предыдущей странице. Не вижу что бы вы добавили функцию в конец файла calculate.js

LG
На сайте с 17.01.2014
Offline
42
#32
siv1987:
Что? Я вам пошаговаю инструкцию написал на предыдущей странице. Не вижу что бы вы добавили функцию в конец файла calculate.js

Я уже добавлял, у меня ничего не получилось, добавить функцию я понял как, заменить в акшене тоже понял, а вот во всем остальном не понял)

---------- Добавлено 15.04.2014 в 00:02 ----------

давайте еще раз попробуем вместе?

Вот добавил. дальше что? ТОлько понятным мне языком)

function dsp_print(){

var $pattern = '<div class="title">Форма распила</div>'+
'<div class="separator"></div>';
var $i = 1;
$('.dsp_wrapper .block').each(function(){
var $block_id = '#' + $(this).attr('id');
$block_pattern = '<div class="group"><div class="number">'+ $i +'</div><div class="color_1">Цвет ЛДСП: ' +
$($block_id + ' .dsp_color_name_holder .sbSelector').html() + '<br />Толщина: ' + $($block_id + ' .dsp_thickness_holder .sbSelector').html() +
' мм </div><div class="color_2">Цвет кромки (2 мм): ' + $($block_id + ' .dsp_color_name_holder_2 .sbSelector').html() +
'<br />Цвет кромки (0,4 мм): ' + $($block_id + ' .dsp_color_name_holder_3 .sbSelector').html() + '</div></div>' +
'<table><tr><th>Длина</th><th>Ширина</th><th colspan="2">Кромка (длина)</th><th colspan="2">Кромка (длина)</th><th>Эскизы</th><th>Кол-во</th><th>Стоимость</th></tr>';

$($block_id + ' .dsp_size_item').each(function(){
var $item_id = '#' + $(this).attr('id');
var $item_pattern = '<tr><td>' + $($item_id + ' .Ldsp').val() + '</td><td>' + $($item_id + ' .Wdsp').val() + '</td><td>' +
$($item_id + ' .edge_holder_1 .sbSelector').html() + '</td><td>' + $($item_id + ' .edge_holder_2 .sbSelector').html() + '</td><td>' +
$($item_id + ' .edge_holder_3 .sbSelector').html() + '</td><td>' + $($item_id + ' .edge_holder_4 .sbSelector').html() + '</td><td>';
var $modal_id = '#sketch_' + $(this).attr('id');
if ($($modal_id + ' .item_1.angles select').val()!= 0){
$item_pattern += '<p>Радиус 50-400 мм: ' + $($modal_id + ' .item_1.angles select').val() + ' шт.</p>';
}
if ($($modal_id + ' .item_2.angles select').val()!= 0){
$item_pattern += '<p>Радиус 450-1000 мм: ' + $($modal_id + ' .item_2.angles select').val() + ' шт.</p>';
}
if ($($modal_id + ' .item_3.angles select').val()!= 0){
$item_pattern += '<p>Прямоугольный выпил: ' + $($modal_id + ' .item_3.angles select').val() + ' шт.</p>';
}
if ($($modal_id + ' .milling .select_1 select').val()!== 'Нет'){
$item_pattern += '<p>Фрезеровка длина: ' + $($modal_id + ' .milling .select_1 select').val() + '</p>';
}
if ($($modal_id + ' .milling .select_2 select').val()!== 'Нет'){
$item_pattern += '<p>Фрезеровка ширина: ' + $($modal_id + ' .milling .select_2 select').val() + '</p>';
}
if ($($modal_id + ' .item_4.milling select').val()!= 0){
$item_pattern += '<p>Криволинейный пил: ' + $($modal_id + ' .item_4.milling select').val() + ' шт.</p>';
}
if ($($modal_id + ' .item_5.milling select').val()!= 0){
$item_pattern += '<p>Наклонный пил: ' + $($modal_id + ' .item_5.milling select').val() + ' шт.</p>';
}
$item_pattern += '</td><td>' + $($item_id + ' .Qdsp').val() + '</td><td>' + $($item_id + ' .cost_wrapper').html() + '</td></tr>';
$block_pattern += $item_pattern;
});
$block_pattern += '</table><div class="separator"></div>';
$pattern += $block_pattern;
$i++;
});

$pattern += '<div class="group"><div class="orgalit"><div class="title">ДВПо</div><table>' +
'<tr><th>Цвет</th><th>Длина</th><th>Ширина</th><th>Кол-во</th><th>Пр. выпилы</th><th>Стоимость</th></tr>';

$('.orgalit_wrapper .orgalit_item').each(function(){
var $item_id = '#' + $(this).attr('id');
var $item_pattern = '<tr><td>' + $($item_id + ' .orgalit_color_holder .sbSelector').html() + '</td><td>' +
$($item_id + ' .item_1 input').val() + '</td><td>' + $($item_id + ' .item_2 input').val() + '</td><td>' +
$($item_id + ' .item_3 input').val() + '</td><td>' + $($item_id + ' .drank_wrapper .sbSelector').html() + '</td><td>' +
$($item_id + ' .item_cost span').html() + '</td></tr>'
$pattern += $item_pattern;
});
$pattern += '</table></div><div class="milling"><div class="title">Присадка</div>' +
'<p>От 1 до 10 мм: ' + $('.additive_wrapper .input_wrapper_1.item_1 input').val() +
' шт.</p><p>От 11 до 20 мм: ' + $('.additive_wrapper .input_wrapper_1.item_2 input').val() +
' шт</p><p>От 21 до 35 мм: ' + $('.additive_wrapper .input_wrapper_1.item_3 input').val() + ' шт.</p></div></div>' +
'<div class="additional">';
if ($('.tab_1 .additional_services_wrapper .option_1 input').is(':checked')){
$pattern += '<p>Упаковка: ' + $('.tab_1 .additional_services_wrapper .option_1 .item_2').html() + ' м.кв. × ' +
$Ppack + ' = ' + $('.tab_1 .additional_services_wrapper .option_1 .item_4').html() + ' р.</p>';
}
if ($('.tab_1 .additional_services_wrapper .option_2 input').is(':checked')){
$pattern += '<p>Погрузка: ' + $('.tab_1 .additional_services_wrapper .option_2 .item_2').html() +
' м.кв. × ' + $Pload + ' = '
+ $('.tab_1 .additional_services_wrapper .option_2 .item_4').html() + ' р.</p>';
}
if ($('.tab_1 .additional_services_wrapper .option_3 input').is(':checked')){
$pattern += '<p>Доставка: ' + $Pdel +' р.</p>';
}
$pattern += '</div><div class="title modal_total">Итого: <span> ' + $('.dsp_total_wrapper .order_total_cost span').html().replace(/(\d{1,3})(?=(?:\d{3})+$)/g, '$1 ') +' руб. </span> </div>';
$pattern2 = $pattern.replace(/<div class="title">Форма распила<\/div>/g, 'Распил ЛДСП<br />');
$pattern2 = $pattern2.replace(/<div class="number">/g, '<br /><div class="number">ЛДСП №');
$pattern2 = $pattern2.replace(/ДВПо/g, '<br />ДВПо');
$pattern2 = $pattern2.replace(/Присадка/g, '<br />Присадка');
$pattern2 = $pattern2.replace(/>/g, '&gt;');
$pattern2 = $pattern2.replace(/</g, '&lt;');
$('#send_order_text').val($pattern2);
$pattern += '<input type="button" class="button" value="Печатать" onclick="window.print();"/><a href="#" class="close"></a><br /><br /><form id="contact" name="contact" action="sendmessage.php" onsubmit="sendmessage" method="post"><label for="email">Ваш E-mail</label><br /><input type="email" id="email" name="email" class="txt"><br><label for="msg">Введите сообщение</label><br /><textarea id="msg" name="msg" class="txtarea"></textarea><br /><button id="send">Отправить заказ.</button></form>';
$('#print .modal_wrap').html($pattern);
$('#print a.close').click(function(){
close_form('print');
return false;

});

}

function sendmessage(){
var email = this.email.value,
msg = this.msg.value,
html = $('#print .modal_wrap').html();
if(! email){
alert('Необходимо ввести емайл');
return false;
}

$.post(this.action, {email: email, msg: msg, html: html}, function(data){
alert('Форма успешно отправлена');
});

return false;
}
siv1987
На сайте с 02.04.2009
Offline
427
#33

Так, функция есть.

Почему у формы action=""? На что я написал заменить?

LG
На сайте с 17.01.2014
Offline
42
#34

siv1987, Если мы сегодня добьем этот мой гемор, я завтра буду спать ка медведь в спячке) несколько ночей уже не сплю с этой формой)

siv1987
На сайте с 02.04.2009
Offline
427
#35

Эту хренотень


$pattern += '<input type="button" class="button" value="Печатать" onclick="window.print();"/><a href="#" class="close"></a><br /><br /><form id="contact" name="contact" action="sendmessage.php" onsubmit="sendmessage" method="post"><label for="email">Ваш E-mail</label><br /><input type="email" id="email" name="email" class="txt"><br><label for="msg">Введите сообщение</label><br /><textarea id="msg" name="msg" class="txtarea"></textarea><br /><button id="send">Отправить заказ.</button></form>';

Заменить на


$pattern += '<input type="button" class="button" value="Печатать" onclick="window.print();"/><a href="#" class="close"></a><br /><br /><label for="email">Ваш E-mail</label><br /><input type="email" id="email" name="email" class="txt"><br><label for="msg">Введите сообщение</label><br /><textarea id="msg" name="msg" class="txtarea"></textarea><br /><button id="send">Отправить заказ.</button>';
$('#print').submit(sendmessage);

Откройте код этой формы #print где она там находится и поставьте action="/sendmessage.php" или в функции поменяйте this.action на "/sendmessage.php"

LG
На сайте с 17.01.2014
Offline
42
#36

Откройте код этой формы #print где она там находится и поставьте action="/sendmessage.php" или в функции поменяйте this.action на "/sendmessage.php"

Я не могу найти эту форму #print может как раз эта форма отсутствует?

я правильно искал, открывал все js и поиском вбив #print не находил.

вот в css нашел:

/* PRINT MODAL */

#print {

top: 15px;
z-index: 2000;
width: 850px;
height: 90%;
margin-left: -500px;
padding: 20px 20px 30px;
font-size: 12px;
line-height: 20px;
}
#print .title {
font-size: 22px;
line-height: normal;
}
#print .separator {
width: 100%;
margin: 0 0 10px 0;
}
#print .group > div {
float: left;
}
#print .number {
font-weight: bold;
font-size: 14px;
text-align: center;
width: 30px;
}
#print .color_1 {
width: 300px;
}
#print .color_2 {
width: 300px;
}
#print table {
width: 100%;
text-align: left;
vertical-align: top;
margin-top: 10px;
font-size: 12px;
text-indent: 8px;
margin-bottom: 20px;
}
#print table tr:hover td{
background: #fcf5e2;
}
#print table th {
vertical-align: middle;
height: 36px;
font-size: 12px;
background: #EDF3D6;
border: 1px #363636 solid;
}
#print table td {
border: 1px solid #C8BEA0;
background: #F9EBC4;
padding-top: 4px;
padding-bottom: 4px;
}
#print p {
line-height: 20px;
margin-bottom: 4px;
}
#print .orgalit {
width: 70%;
}
#print .group .title {
font-size: 18px;
}
#print .milling {
width: 20%;
margin-left: 40px;
}
#print .milling p {
padding-left: 0;
}
#print .button {
width: 160px;
}
#print .additional {
margin-bottom: 20px;
}
#print .modal_total {
font-family: Arial,Helvetica,Garuda,sans-serif;
font-weight: bold;
}
siv1987
На сайте с 02.04.2009
Offline
427
#37
LipGrad:
Я не могу найти эту форму #print может как раз эта форма отсутствует?

Это форма в которой находится модальное окно. Если не находите тогда замените в функции this.action. И скорее всего $('#print .modal_wrap').html(); придется заменить на $(this).html();

LG
На сайте с 17.01.2014
Offline
42
#38

тут поменять?

$.post(this.action, {email: email, msg: msg, html: html}, function(data){

alert('Форма успешно отправлена');

стало:

$.post(this.action, {"/sendmessage.php"}, function(data){

alert('Форма успешно отправлена');

так?

---------- Добавлено 15.04.2014 в 00:44 ----------

function sendmessage(){

var email = this.email.value,
msg = this.msg.value,
html = $(this).html();
if(! email){
alert('Необходимо ввести емайл');
return false;
}

$.post(this.action, {email: email, msg: msg, html: html}, function(data){
alert('Форма успешно отправлена');
});

return false;
}

так?

siv1987
На сайте с 02.04.2009
Offline
427
#39

И скорее всего вам придется обратится к специалистам, которые из "raw данных" сгенерируют на сервере специальную таблицу для мыло, так как стили можно применять только inline, а без стилей это просто порятнка текста.

---------- Добавлено 14.04.2014 в 23:46 ----------

LipGrad:
так?

Вы плохо читаете.

siv1987:
Откройте код этой формы #print где она там находится и поставьте action="/sendmessage.php" или в функции поменяйте this.action на "/sendmessage.php"
LG
На сайте с 17.01.2014
Offline
42
#40

а мне стили не нужны, чтобы главное таблица сохранялась и понятно было что чего и сколько, ну типо таблицы xls, можно также как выглядит она если нажать "печатать" в привью принтера.

---------- Добавлено 15.04.2014 в 00:51 ----------

или в функции поменяйте this.action на "/sendmessage.php"

я выше код кинул с заменой, так? это this.action я встречаю только тут), там по знакам правильно вставил?

$.post(this.action, {"/sendmessage.php"}, function(data){

alert('Форма успешно отправлена');

вот еще #print нашел в css

#print {
display: none;
left: 0;
top: 0;
margin: 0;
position: relative;
box-shadow: none;
-moz-box-shadow: none;
-webkit-box-shadow: none;

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий