За последние 24 часа нас посетили 16488 программистов и 1646 роботов. Сейчас ищут 1634 программиста ...

Как отключить отправку формы, во время загрузки страницы!

Тема в разделе "Сделайте за меня", создана пользователем donec2009, 9 фев 2015.

  1. donec2009

    donec2009 Новичок

    С нами с:
    7 фев 2015
    Сообщения:
    16
    Симпатии:
    0
    Здравствуйте! Блин с толкнулся с такой проблемой, когда любой пользователь заходит на страницу или обновляет ее http://bekasnp.ru/ срабатывает форма отправки данных на почту, форма находится во фрейме + ява скрипт при развертывании, то есть при нажатии на кнопку (расчет стоимости потолка) развертывается фрейм где находится калькулятор и кнопка отправить!
    Задача такая, нужно сделать чтоб сообщение отправлялось только после нажатии пользователем кнопки отправить, а не при загрузке страницы ( а то представте сколько бы пользователей зашло на сайт и столько сообщений пришло в электронку, хотя ни кто не нажимал кнопку отправить)

    если что вот форма php


    Код (Text):
    1. <?php
    2. $to      = 'donec2009@yandex.ru'; // тут указываем адрес КОМУ мы отправляем письмо
    3. $subject = convert_cyr_string($subject,'w','k');
    4. $subject = 'Заказ натяжного потолка'; // тема письма
    5. $message = convert_cyr_string($message,'w','k');
    6. ?>
    7. <html>
    8. <head>
    9.     <meta charset="utf-8" />
    10.     <meta name="viewport" content="width=device-width, initial-scale=1.0">
    11.     <title>Калькулятор рассчета стоимости натяжных потолков</title>
    12.     <link href="Content/calc.css" rel="stylesheet" />
    13.     <link href="Content/jquery-ui-1.9.2.custom.min.css" rel="stylesheet" />
    14.     <script src="Scripts/jquery-1.10.2.min.js"></script>
    15.     <script src="Scripts/jQueryChange.js"></script>
    16.     <script src="Scripts/jquery-ui-1.9.2.custom.min.js"></script>
    17. </head>
    18. <body style="background:#FFFFFF;">
    19.    
    20.  
    21.  
    22.  
    23. <style type="text/css">
    24. .imageStyle1{
    25.   border-radius: 10%;
    26.   border:0;
    27. }
    28. </style>
    29.  
    30.  
    31. <div class="calc" style="; background:#dcdcdc;width:900px;height:541px;border-top-left-radius:14px;border-top-right-radius:14px;border-bottom-left-radius:14px;border-bottom-right-radius:14px;">
    32. <form method="post" action="<?php echo($_SERVER['PHP_SELF']); ?>" >
    33.  
    34.  
    35.  
    36. <div style="top:371px;left:295px;" class="calcElement">
    37.     <input type="checkbox" value="60" name="check30" id="check30" style="min-width:16px;min-height:16px;" class="cElementForSelect "  /><label class="labelForElement" style="" for="check30"></label>
    38. </div>
    39.  
    40.  
    41. <label id="label32" style="top:86px;left:422px;min-width:61px;width:61px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">Полотно</label>
    42.  
    43.  
    44. <label id="p" style="top:87px;left:799px;min-width:30px;width:30px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">0</label>
    45.  
    46.  
    47.  
    48. <input type="text" value="  Телефон" name="tele" id="tele" style="top:459px;left:180px;width:150px;height:26px;color:#757575;" class="cElementForSelect calcElement" />
    49.  
    50. <label id="label31" style="top:37px;left:423px;min-width:69px;width:69px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">Параметр</label>
    51.  
    52.  
    53. <label id="polotno" style="top:84px;left:701px;min-width:50px;width:50px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">0</label>
    54.  
    55.  
    56. <label id="label35" style="top:182px;left:422px;min-width:248px;width:248px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">Обработка дополнительных углов</label>
    57.  
    58.  
    59. <label id="label3" style="top:34px;left:6px;min-width:187px;width:187px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">Фактура</label>
    60.  
    61.  
    62. <label id="label62" style="top:136px;left:843px;min-width:20px;width:20px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">руб.</label>
    63.  
    64.  
    65.  
    66. <select name="producer" id="producer" style="top:34px;left:92px;width:240px;height:26px; border:0; border-radius: 18px;" class="cElementForSelect imageStyle1 calcElement2">
    67.  
    68.                     <option value="300" >Глянец, мат, сатин, (белый) - 300 р. м./кв.
    69. </option>
    70.                    <option value="350" >  Глянец, мат, сатин, (цветной) - 350 р. м./кв.
    71. </option>
    72.                     <option value="400" >  Глянец, мат, сатин, (широкоформатный) - 400 р. м./кв.
    73. </option>
    74.                     <option value="600" >  Глянец (принты) - 600 р. м./кв.
    75. </option>
    76.                     <option value="350" >  Мат (фактурный) - 350 р. м./кв.</option>
    77.  
    78.  
    79. </select>
    80.  
    81. <label id="label34" style="top:371px;left:423px;min-width:226px;width:226px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">Маскировочная лента (вставка)</label>
    82.  
    83.  
    84. <label id="l" style="top:277px;left:800px;min-width:8px;width:8px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">0</label>
    85.  
    86.  
    87. <label id="label33" style="top:134px;left:421px;min-width:150px;width:150px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">Крепеж профильный</label>
    88.  
    89.  
    90. <label id="tr" style="top:231px;left:701px;min-width:8px;width:8px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">0</label>
    91.  
    92.  
    93. <label id="label65" style="top:280px;left:842px;min-width:20px;width:20px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">руб.</label>
    94.  
    95.  
    96. <label id="label40" style="top:35px;left:695px;min-width:50px;width:50px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">Кол-во</label>
    97.  
    98.  
    99. <label id="sve" style="top:326px;left:702px;min-width:8px;width:8px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">0</label>
    100.  
    101.  
    102. <label id="label54" style="top:327px;left:742px;min-width:23px;width:23px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">шт.</label>
    103.  
    104.  
    105. <label id="k" style="top:136px;left:799px;min-width:8px;width:8px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">0</label>
    106.  
    107.  
    108. <label id="s" style="top:329px;left:799px;min-width:8px;width:8px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">0</label>
    109.  
    110.  
    111. <label id="label64" style="top:230px;left:841px;min-width:20px;width:20px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">руб.</label>
    112.  
    113.  
    114. <label id="label53" style="top:278px;left:742px;min-width:23px;width:23px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">шт.</label>
    115.  
    116.  
    117. <label id="label5" style="top:181px;left:9px;min-width:100px;width:100px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">Углы (шт.)</label>
    118.  
    119.  
    120. <input type="text" value="0" name="result" id="result" style="top:440px;left:486px;width:320px;height:64px;color:#4f5559;font-size:45px;" class="cElementForSelect textStyle5 calcElement1" />
    121.  
    122.  
    123. <label id="label66" style="top:327px;left:841px;min-width:20px;width:20px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">руб.</label>
    124.  
    125.  
    126. <label id="label1" style="top:-7px;left:281px;min-width:351px;width:351px;min-height:20px;height:20px;color:#02253d;font-size:22px;" class="cElementForSelect  calcElement" for="">Расчет стоимости потолка</label>
    127.  
    128.  
    129. <label id="label8" style="top:324px;left:6px;min-width:140px;width:140px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">Светильники (шт.)</label>
    130.  
    131.  
    132. <label id="label27" style="top:133px;left:7px;min-width:169px;width:169px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">Ширина помещения (м.)</label>
    133.  
    134.  
    135. <label id="label46" style="top:134px;left:741px;min-width:22px;width:22px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">м.п</label>
    136.  
    137.  
    138. <label id="ugli" style="top:183px;left:703px;min-width:8px;width:8px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">0</label>
    139.  
    140.  
    141. <label id="res" style="top:455px;left:598px;min-width:350px;width:350px;min-height:64px;height:64px;color:#4f5559;font-size:40px;" class="cElementForSelect  calcElement" for="">0</label>
    142.  
    143.  
    144. <label id="label67" style="top:376px;left:841px;min-width:20px;width:20px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">руб.</label>
    145.  
    146.  
    147. <input type="number" value="0" min="0" max=500 step=1 name="count_svet" id="count_svet" style="top:225px;left:262px;width:80px;height:26px;" class="cElementForSelect  calcElement" />
    148.  
    149. <label id="label36" style="top:231px;left:422px;min-width:111px;width:111px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">Окантовка труб</label>
    150.  
    151.  
    152. <label id="label51" style="top:183px;left:741px;min-width:23px;width:23px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">шт.</label>
    153.  
    154.  
    155. <label name="krep" id="krep" style="top:133px;left:702px;min-width:8px;width:8px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">0</label>
    156.  
    157.  
    158. <label id="ot" style="top:233px;left:799px;min-width:8px;width:8px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">0</label>
    159.  
    160.  
    161.  
    162. <input type="text" value="0" name="sirina28" id="sirina28" style="top:129px;left:262px;width:80px;height:26px;" class="cElementForSelect  calcElement" />
    163.  
    164. <label id="label39" style="top:326px;left:421px;min-width:265px;width:265px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">Стойка + отверстие для светильника</label>
    165.  
    166.  
    167. <label id="label31" style="top:373px;left:7px;min-width:226px;width:226px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">Маскировочная лента (вставка)</label>
    168.  
    169.  
    170. <input type="number" value="0" min="0" max=50 step=1 name="count_ugl" id="count_ugl" style="top:176px;left:262px;width:80px;height:26px;" class="cElementForSelect  calcElement" />
    171.  
    172. <label id="label7" style="top:277px;left:7px;min-width:100px;width:100px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">Люстры (шт.)</label>
    173.  
    174.  
    175. <label id="label4" style="top:84px;left:7px;min-width:186px;width:186px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">Длина помещения (м.)</label>
    176.  
    177.  
    178. <input type="number" value="0" min="0" max=500 name="count_lustra" id="count_lustra" style="top:272px;left:262px;width:80px;height:26px;" class="cElementForSelect  calcElement" />
    179.  
    180. <label id="label48" style="top:375px;left:742px;min-width:26px;width:26px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">м.п.</label>
    181.  
    182.  
    183. <label id="lyst" style="top:279px;left:702px;min-width:8px;width:8px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">0</label>
    184.  
    185.  
    186. <label id="label41" style="top:36px;left:792px;min-width:78px;width:78px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">Стоимость</label>
    187.  
    188.  
    189. <label id="label44" style="top:74px;left:742px;min-width:18px;width:18px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">м2</label>
    190.  
    191.  
    192.  
    193. <input type="text" value="  Имя" name="imy" id="imy" style="top:459px;left:21px;width:150px;height:26px;color:#757575;margin-left:10px;margin-top:10px;" class="cElementForSelect calcElement" />
    194.  
    195.  
    196. <input type="text" name="sq" value="0" id="sq" style="top:83px;left:261px;width:80px;height:26px;" class="cElementForSelect  calcElement" />
    197.  
    198. <label id="label6" style="top:229px;left:7px;min-width:90px;width:90px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">Трубы (шт.)</label>
    199.  
    200.  
    201. <label id="label52" style="top:231px;left:740px;min-width:23px;width:23px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">шт.</label>
    202.  
    203.  
    204. <label id="o" style="top:184px;left:799px;min-width:8px;width:8px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">0</label>
    205.  
    206.  
    207. <label id="label63" style="top:183px;left:841px;min-width:20px;width:20px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">руб.</label>
    208.  
    209.  
    210. <label id="m" style="top:376px;left:797px;min-width:8px;width:8px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">0</label>
    211.  
    212.  
    213. <label id="label61" style="top:86px;left:843px;min-width:20px;width:20px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">руб.</label>
    214.  
    215.  
    216. <label id="krep2" style="top:373px;left:701px;min-width:8px;width:8px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">0</label>
    217.  
    218.  
    219. <input type="number" value="0" min="0" max=500 step=1 name="count_plintus" id="count_plintus" style="top:321px;left:262px;width:80px;height:26px;" class="cElementForSelect  calcElement" />
    220.  
    221. <label id="label37" style="top:278px;left:421px;min-width:231px;width:231px;min-height:20px;height:20px;" class="cElementForSelect  calcElement" for="">Стойка + отверстие для люстры</label>
    222.  
    223. <p><input type="image" src="Content/btn-send.png" alt="Отправить" class="calcElement3"></p>
    224.  
    225. </form></div>
    226.  
    227. <?php
    228.  
    229. $message = 'Фактура (по какой цене заказал пользователь) - '.$_POST['producer']."\n".
    230. ' Длина помещения (м.) - '.$_POST['sq']."\n".
    231. ' Ширина помещения (м.) - '.$_POST['sirina28']."\n".
    232. ' Углы (шт.) - '.$_POST['count_ugl']."\n".
    233. ' Трубы (шт.) - '.$_POST['count_svet']."\n".
    234. ' Люстры (шт.) - '.$_POST['count_lustra']."\n".
    235. ' Светильники (шт.) - '.$_POST['count_plintus']."\n".
    236. ' Имя - '.$_POST['imy']."\n".
    237. ' Телефон - '.$_POST['tele']."\n".
    238. ' Сумма заказа - '.$_POST['result']."\n";
    239.  
    240. if(isset($_POST['check30']))
    241. $message .= 'Маскировочная лента была выбрана пользователем!'."\n"."\n";
    242.  
    243. $message .= 'Пояснение для (обработчиков заказа сайта Бекас натяжные потолки):'."\n"."\n".
    244. 'Фактура (по какой цене заказал пользователь) – (здесь указана цена фактуры) согласно ниже указанных фактур можно определить какую фактуру заказал пользователь! '."\n"."\n".
    245. '300 - Глянец, мат, сатин, (белый) - 300 р. м./кв.
    246. 350 - Глянец, мат, сатин, (цветной) - 350 р. м./кв.
    247. 400 - Глянец, мат, сатин, (широкоформатный) - 400 р. м./кв.
    248. 600 - Глянец (принты) - 600 р. м./кв.
    249. 350 - Мат (фактурный) - 350 р. м./кв.'."\n"."\n".
    250.  
    251. 'Напоминание углы считаются от 7 шт. - 100 руб. за каждый последующий угол! То есть в сообщении приходит столько углов сколько пользователь поставил, в калькуляторном поле!'."\n"."\n".
    252.  
    253. 'Если пришло в сообщении после Суммы (Маскировочная лента была выбрана пользователем!) – это означает что пользователь поставил галочку в калькуляторе  Маскировочная лента (вставка), если пользователь не ставил галочку, то сообщение (Маскировочная лента была выбрана пользователем!) вам не придет на почту!
    254. '.$_POST[''];
    255.  
    256. mail($to, $subject, $message);
    257.  
    258. ?>
    259.  
    260. <script type="text/javascript">
    261. var lustra=200;
    262. var truba=200;
    263. var plintus=200;
    264. var ugl=100;
    265. var svet=200;
    266. var rossiya=[300];
    267. var array30=[350];
    268. var kitai=[600];
    269. var germaniya=[350];
    270. var franciya=[400];
    271. function calcBodyFunction(){
    272. var thisCalcBodyFunction=this;
    273. this.__defineGetter__("result",function(){
    274.         return parseFloat(jQuery("#result").val());
    275.         });
    276.  
    277.         this.__defineSetter__("result",function(val){
    278.         jQuery("#result").val(val);
    279.         });
    280. this.__defineGetter__("count_svet",function(){
    281.         return parseFloat(jQuery("#count_svet").val());
    282.         });
    283.  
    284.         this.__defineSetter__("count_svet",function(val){
    285.         jQuery("#count_svet").val(val);
    286.         });
    287. this.__defineGetter__("imy",function(){
    288.         return parseFloat(jQuery("#imy").val());
    289.         });
    290.  
    291.         this.__defineSetter__("imy",function(val){
    292.         jQuery("#imy").val(val);
    293.         });
    294. this.__defineGetter__("count_plintus",function(){
    295.         return parseFloat(jQuery("#count_plintus").val());
    296.         });
    297.  
    298.         this.__defineSetter__("count_plintus",function(val){
    299.         jQuery("#count_plintus").val(val);
    300.         });
    301. this.__defineGetter__("tele",function(){
    302.         return parseFloat(jQuery("#tele").val());
    303.         });
    304.  
    305.         this.__defineSetter__("tele",function(val){
    306.         jQuery("#tele").val(val);
    307.         });
    308. this.__defineGetter__("count_lustra",function(){
    309.         return parseFloat(jQuery("#count_lustra").val());
    310.         });
    311.  
    312.         this.__defineSetter__("count_lustra",function(val){
    313.         jQuery("#count_lustra").val(val);
    314.         });
    315. this.__defineGetter__("producer",function(){
    316.         return parseFloat(jQuery("#producer").val());
    317.         });
    318.  
    319.         this.__defineSetter__("producer",function(val){
    320.         jQuery("#producer").val(val);
    321.         });
    322. this.__defineGetter__("sq",function(){
    323.         return parseFloat(jQuery("#sq").val());
    324.         });
    325.  
    326.         this.__defineSetter__("sq",function(val){
    327.         jQuery("#sq").val(val);
    328.         });
    329. this.__defineGetter__("sirina28",function(){
    330.         return parseFloat(jQuery("#sirina28").val());
    331.         });
    332.  
    333.         this.__defineSetter__("sirina28",function(val){
    334.         jQuery("#sirina28").val(val);
    335.         });
    336. this.__defineGetter__("count_ugl",function(){
    337.         return parseFloat(jQuery("#count_ugl").val());
    338.         });
    339.  
    340.         this.__defineSetter__("count_ugl",function(val){
    341.         jQuery("#count_ugl").val(val);
    342.         });
    343. this.__defineGetter__("check30",function(){
    344.         var valSel = jQuery("#check30").is(':checked');
    345.         if(valSel){
    346.             return parseFloat(jQuery("#check30").val());
    347.         }
    348.         return 0;
    349.         });
    350.  
    351.         this.__defineSetter__("check30",function(val){
    352.         jQuery("#check30").val(val);
    353.         });
    354. this.__defineGetter__("ot",function(){
    355.         return jQuery("#ot").text();
    356.         });
    357.  
    358.         this.__defineSetter__("ot",function(val){
    359.         jQuery("#ot").text(val);
    360.         });
    361. this.__defineGetter__("s",function(){
    362.         return jQuery("#s").text();
    363.         });
    364.  
    365.         this.__defineSetter__("s",function(val){
    366.         jQuery("#s").text(val);
    367.         });
    368. this.__defineGetter__("label31",function(){
    369.         return jQuery("#label31").text();
    370.         });
    371.  
    372.         this.__defineSetter__("label31",function(val){
    373.         jQuery("#label31").text(val);
    374.         });
    375. this.__defineGetter__("label54",function(){
    376.         return jQuery("#label54").text();
    377.         });
    378.  
    379.         this.__defineSetter__("label54",function(val){
    380.         jQuery("#label54").text(val);
    381.         });
    382. this.__defineGetter__("label35",function(){
    383.         return jQuery("#label35").text();
    384.         });
    385.  
    386.         this.__defineSetter__("label35",function(val){
    387.         jQuery("#label35").text(val);
    388.         });
    389. this.__defineGetter__("label32",function(){
    390.         return jQuery("#label32").text();
    391.         });
    392.  
    393.         this.__defineSetter__("label32",function(val){
    394.         jQuery("#label32").text(val);
    395.         });
    396. this.__defineGetter__("label8",function(){
    397.         return jQuery("#label8").text();
    398.         });
    399.  
    400.         this.__defineSetter__("label8",function(val){
    401.         jQuery("#label8").text(val);
    402.         });
    403. this.__defineGetter__("p",function(){
    404.         return jQuery("#p").text();
    405.         });
    406.  
    407.         this.__defineSetter__("p",function(val){
    408.         jQuery("#p").text(val);
    409.         });
    410. this.__defineGetter__("label46",function(){
    411.         return jQuery("#label46").text();
    412.         });
    413.  
    414.         this.__defineSetter__("label46",function(val){
    415.         jQuery("#label46").text(val);
    416.         });
    417. this.__defineGetter__("label51",function(){
    418.         return jQuery("#label51").text();
    419.         });
    420.  
    421.         this.__defineSetter__("label51",function(val){
    422.         jQuery("#label51").text(val);
    423.         });
    424. this.__defineGetter__("label4",function(){
    425.         return jQuery("#label4").text();
    426.         });
    427.  
    428.         this.__defineSetter__("label4",function(val){
    429.         jQuery("#label4").text(val);
    430.         });
    431.  
    432. this.__defineGetter__("lyst",function(){
    433.         return jQuery("#lyst").text();
    434.         });
    435.  
    436.         this.__defineSetter__("lyst",function(val){
    437.         jQuery("#lyst").text(val);
    438.         });
    439. this.__defineGetter__("label7",function(){
    440.         return jQuery("#label7").text();
    441.         });
    442.  
    443.         this.__defineSetter__("label7",function(val){
    444.         jQuery("#label7").text(val);
    445.         });
    446. this.__defineGetter__("krep2",function(){
    447.         return jQuery("#krep2").text();
    448.         });
    449.  
    450.         this.__defineSetter__("krep2",function(val){
    451.         jQuery("#krep2").text(val);
    452.         });
    453. this.__defineGetter__("l",function(){
    454.         return jQuery("#l").text();
    455.         });
    456.  
    457.         this.__defineSetter__("l",function(val){
    458.         jQuery("#l").text(val);
    459.         });
    460. this.__defineGetter__("label33",function(){
    461.         return jQuery("#label33").text();
    462.         });
    463.  
    464.         this.__defineSetter__("label33",function(val){
    465.         jQuery("#label33").text(val);
    466.         });
    467. this.__defineGetter__("ugli",function(){
    468.         return jQuery("#ugli").text();
    469.         });
    470.  
    471.         this.__defineSetter__("ugli",function(val){
    472.         jQuery("#ugli").text(val);
    473.         });
    474. this.__defineGetter__("tr",function(){
    475.         return jQuery("#tr").text();
    476.         });
    477.  
    478.         this.__defineSetter__("tr",function(val){
    479.         jQuery("#tr").text(val);
    480.         });
    481. this.__defineGetter__("label53",function(){
    482.         return jQuery("#label53").text();
    483.         });
    484.  
    485.         this.__defineSetter__("label53",function(val){
    486.         jQuery("#label53").text(val);
    487.         });
    488. this.__defineGetter__("label48",function(){
    489.         return jQuery("#label48").text();
    490.         });
    491.  
    492.         this.__defineSetter__("label48",function(val){
    493.         jQuery("#label48").text(val);
    494.         });
    495. this.__defineGetter__("krep",function(){
    496.         return jQuery("#krep").text();
    497.         });
    498.  
    499.         this.__defineSetter__("krep",function(val){
    500.         jQuery("#krep").text(val);
    501.         });
    502. this.__defineGetter__("label39",function(){
    503.         return jQuery("#label39").text();
    504.         });
    505.  
    506.         this.__defineSetter__("label39",function(val){
    507.         jQuery("#label39").text(val);
    508.         });
    509. this.__defineGetter__("label52",function(){
    510.         return jQuery("#label52").text();
    511.         });
    512.  
    513.         this.__defineSetter__("label52",function(val){
    514.         jQuery("#label52").text(val);
    515.         });
    516. this.__defineGetter__("label3",function(){
    517.         return jQuery("#label3").text();
    518.         });
    519.  
    520.         this.__defineSetter__("label3",function(val){
    521.         jQuery("#label3").text(val);
    522.         });
    523. this.__defineGetter__("sve",function(){
    524.         return jQuery("#sve").text();
    525.         });
    526.  
    527.         this.__defineSetter__("sve",function(val){
    528.         jQuery("#sve").text(val);
    529.         });
    530. this.__defineGetter__("res",function(){
    531.         return jQuery("#res").text();
    532.  
    533.         });
    534.  
    535.         this.__defineSetter__("res",function(val){
    536.         jQuery("#res").text(val);
    537.         });
    538. this.__defineGetter__("label41",function(){
    539.         return jQuery("#label41").text();
    540.         });
    541.  
    542.         this.__defineSetter__("label41",function(val){
    543.         jQuery("#label41").text(val);
    544.         });
    545. this.__defineGetter__("label40",function(){
    546.         return jQuery("#label40").text();
    547.         });
    548.  
    549.         this.__defineSetter__("label40",function(val){
    550.         jQuery("#label40").text(val);
    551.         });
    552. this.__defineGetter__("label63",function(){
    553.         return jQuery("#label63").text();
    554.         });
    555.  
    556.         this.__defineSetter__("label63",function(val){
    557.         jQuery("#label63").text(val);
    558.         });
    559. this.__defineGetter__("label65",function(){
    560.         return jQuery("#label65").text();
    561.         });
    562.  
    563.         this.__defineSetter__("label65",function(val){
    564.         jQuery("#label65").text(val);
    565.         });
    566. this.__defineGetter__("label44",function(){
    567.         return jQuery("#label44").text();
    568.         });
    569.  
    570.         this.__defineSetter__("label44",function(val){
    571.         jQuery("#label44").text(val);
    572.         });
    573. this.__defineGetter__("o",function(){
    574.         return jQuery("#o").text();
    575.         });
    576.  
    577.         this.__defineSetter__("o",function(val){
    578.         jQuery("#o").text(val);
    579.         });
    580. this.__defineGetter__("label61",function(){
    581.         return jQuery("#label61").text();
    582.         });
    583.  
    584.         this.__defineSetter__("label61",function(val){
    585.         jQuery("#label61").text(val);
    586.         });
    587. this.__defineGetter__("m",function(){
    588.         return jQuery("#m").text();
    589.         });
    590.  
    591.         this.__defineSetter__("m",function(val){
    592.         jQuery("#m").text(val);
    593.         });
    594. this.__defineGetter__("polotno",function(){
    595.         return jQuery("#polotno").text();
    596.         });
    597.  
    598.         this.__defineSetter__("polotno",function(val){
    599.         jQuery("#polotno").text(val);
    600.         });
    601. this.__defineGetter__("label1",function(){
    602.         return jQuery("#label1").text();
    603.         });
    604.  
    605.         this.__defineSetter__("label1",function(val){
    606.         jQuery("#label1").text(val);
    607.         });
    608. this.__defineGetter__("label62",function(){
    609.         return jQuery("#label62").text();
    610.         });
    611.  
    612.         this.__defineSetter__("label62",function(val){
    613.         jQuery("#label62").text(val);
    614.         });
    615. this.__defineGetter__("label66",function(){
    616.         return jQuery("#label66").text();
    617.         });
    618.  
    619.         this.__defineSetter__("label66",function(val){
    620.         jQuery("#label66").text(val);
    621.         });
    622. this.__defineGetter__("label64",function(){
    623.         return jQuery("#label64").text();
    624.         });
    625.  
    626.         this.__defineSetter__("label64",function(val){
    627.         jQuery("#label64").text(val);
    628.         });
    629. this.__defineGetter__("label67",function(){
    630.         return jQuery("#label67").text();
    631.         });
    632.  
    633.         this.__defineSetter__("label67",function(val){
    634.         jQuery("#label67").text(val);
    635.         });
    636. this.__defineGetter__("label31",function(){
    637.         return jQuery("#label31").text();
    638.         });
    639.  
    640.         this.__defineSetter__("label31",function(val){
    641.         jQuery("#label31").text(val);
    642.         });
    643. this.__defineGetter__("label6",function(){
    644.         return jQuery("#label6").text();
    645.         });
    646.  
    647.         this.__defineSetter__("label6",function(val){
    648.         jQuery("#label6").text(val);
    649.         });
    650. this.__defineGetter__("label37",function(){
    651.         return jQuery("#label37").text();
    652.         });
    653.  
    654.         this.__defineSetter__("label37",function(val){
    655.         jQuery("#label37").text(val);
    656.         });
    657. this.__defineGetter__("label5",function(){
    658.         return jQuery("#label5").text();
    659.         });
    660.  
    661.         this.__defineSetter__("label5",function(val){
    662.         jQuery("#label5").text(val);
    663.         });
    664. this.__defineGetter__("label27",function(){
    665.         return jQuery("#label27").text();
    666.         });
    667.  
    668.         this.__defineSetter__("label27",function(val){
    669.         jQuery("#label27").text(val);
    670.         });
    671. this.__defineGetter__("label34",function(){
    672.         return jQuery("#label34").text();
    673.         });
    674.  
    675.         this.__defineSetter__("label34",function(val){
    676.         jQuery("#label34").text(val);
    677.         });
    678. this.__defineGetter__("label36",function(){
    679.         return jQuery("#label36").text();
    680.         });
    681.  
    682.         this.__defineSetter__("label36",function(val){
    683.         jQuery("#label36").text(val);
    684.         });
    685. this.__defineGetter__("script45",function(){
    686.     with (this){
    687.         krep= ((sq+sirina28)*2);
    688. krep2= ((sq+sirina28)*2);
    689. k= ((sq+sirina28)*2)*60;;
    690.     }
    691.  return true;
    692. });
    693.  
    694.  
    695. this.__defineGetter__("script44",function(){
    696.     with (this){
    697.         polotno=sq*sirina28;
    698. p=(sq*sirina28)*producer;;
    699.     }
    700.  return true;
    701. });
    702.  
    703.  
    704. this.__defineGetter__("script60",function(){
    705.     with (this){
    706.         sve=count_plintus;
    707. s=count_plintus*200;;
    708.     }
    709.  return true;
    710. });
    711.  
    712.  
    713. this.__defineGetter__("script75",function(){
    714.     with (this){
    715.         m=((sq+sirina28)*2)*60;;
    716.     }
    717.  return true;
    718. });
    719.  
    720.  
    721. this.__defineGetter__("scriptResult",function(){
    722.     with (this){
    723.         var z = 0;
    724.          if (sq >=0 && sq < 11){
    725.             z = 0;   
    726.          }
    727.          if (sq>=11 && sq < 21){
    728.             z = 1;   
    729.          }
    730.           if (sq>=21 && sq < 41){
    731.             z = 2;   
    732.          }
    733.          if (sq>=41 && sq < 61){
    734.             z = 3;   
    735.          }
    736.          if (sq>=61 && sq < 100){
    737.             z = 4;   
    738.          }
    739.          if (sq >= 100){
    740.             z = 5;   
    741.          }
    742.  
    743.  
    744. var sum = 0.0;
    745.          
    746.        
    747.            
    748.             switch (producer){
    749.                 case 300: sum += (sq*sirina28)*rossiya;  break;
    750.                 case 350: sum += (sq*sirina28)*germaniya; break;
    751.                 case 400: sum += (sq*sirina28)*franciya; break;
    752.                 case 600: sum += (sq*sirina28)*kitai; break;
    753.                                 case 350: sum += (sq*sirina28)*array30; break;
    754.                    
    755.             }
    756.  
    757.  
    758.        
    759.        
    760.         if (count_ugl>6){
    761.             sum += (count_ugl-6)*ugl;
    762.         }
    763.         sum += count_svet*svet;
    764.         sum += count_lustra*lustra;
    765.         sum += count_plintus*plintus;
    766.         sum += ((sq+sirina28)*2)*check30;
    767.  
    768.         result = sum+' руб';
    769.                 res = sum+' руб';;
    770.     }
    771.  return true;
    772. });
    773.  
    774.  
    775. this.__defineGetter__("script58",function(){
    776.     with (this){
    777.         lyst=count_lustra;
    778. l=count_lustra*200;;
    779.     }
    780.  return true;
    781. });
    782.  
    783.  
    784. this.__defineGetter__("script56",function(){
    785.     with (this){
    786.         tr=count_svet;
    787. ot=count_svet*200;;
    788.     }
    789.  return true;
    790. });
    791.  
    792.  
    793. this.__defineGetter__("script49",function(){
    794.     with (this){
    795.         ugli=count_ugl  ;
    796. if (count_ugl<7){
    797.             ugli= ugli=0;
    798.                 }
    799. if (ugli>6){
    800.             ugli= ugli-6;
    801. }
    802. o=ugli*100;
    803. ;
    804.     }
    805.  return true;
    806. });
    807.  
    808.  
    809. };jQuery("#result").bind('textchange', function () {
    810. calcBody.scriptResult;
    811.  
    812. });
    813.  
    814.  
    815. jQuery("#sq").bind('textchange', function () {
    816. calcBody.script45;
    817. calcBody.scriptResult;
    818. calcBody.script44;
    819.  
    820. });
    821.  
    822.  
    823. jQuery("#sirina28").bind('textchange', function () {
    824. calcBody.script45;
    825. calcBody.scriptResult;
    826. calcBody.script44;
    827.  
    828. });
    829.  
    830.  
    831. jQuery("#count_svet").change(function(){
    832. calcBody.scriptResult;
    833. calcBody.script56;
    834.  
    835. });
    836.  
    837.  
    838. jQuery("#count_plintus").change(function(){
    839. calcBody.scriptResult;
    840. calcBody.script60;
    841.  
    842. });
    843.  
    844.  
    845. jQuery("#count_lustra").change(function(){
    846. calcBody.scriptResult;
    847. calcBody.script58;
    848.  
    849. });
    850.  
    851.  
    852. jQuery("#check30").change(function(){
    853. calcBody.scriptResult;
    854. calcBody.script45;
    855. calcBody.script75;
    856.  
    857. });
    858.  
    859.  
    860. jQuery("#producer").change(function(){
    861. calcBody.scriptResult;
    862. calcBody.script44;
    863.  
    864. });
    865.  
    866.  
    867. jQuery("#count_ugl").change(function(){
    868. calcBody.scriptResult;
    869. calcBody.script49;
    870.  
    871. });
    872.  
    873.  
    874.  
    875.     var calcBody = new calcBodyFunction();
    876. calcBody.script45;calcBody.script44;calcBody.script60;calcBody.script75;calcBody.scriptResult;calcBody.script58;calcBody.script56;calcBody.script49;
    877. </script>
    878.  
    879. </body>
    880. </html>
     
  2. donec2009

    donec2009 Новичок

    С нами с:
    7 фев 2015
    Сообщения:
    16
    Симпатии:
    0
    Re: Как отключить отправку формы, во время загрузки страницы

    Может сделать проверку поля длина? И тем самым он не отправит сообщение
     
  3. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.770
    Адрес:
    :сердА
    Re: Как отключить отправку формы, во время загрузки страницы

    Сделай проверку, что в $POST что-то имеется. Оберни в нее отправку письма. Тогда не будет отправляться при каждом вызове скрипта.
     
  4. donec2009

    donec2009 Новичок

    С нами с:
    7 фев 2015
    Сообщения:
    16
    Симпатии:
    0
    Re: Как отключить отправку формы, во время загрузки страницы

    Fell-x27 А как правильно это сделать напиши пожалуйста, а то я делал а у меня после скрипт не работает то есть не считает калькулятор при вводе данных!
     
  5. donec2009

    donec2009 Новичок

    С нами с:
    7 фев 2015
    Сообщения:
    16
    Симпатии:
    0
    Re: Как отключить отправку формы, во время загрузки страницы

    Та сделал проверку, а после скрипт не работает, а точнее я поставил длину обязательным для заполнения!

    Вот часть кода которого изминил

    Код (Text):
    1. <?php
    2.  
    3. if ( empty($_POST["sq"]) || empty($_POST["sq"]) )
    4. die('');
    5.  
    6. $message = 'Фактура (по какой цене заказал пользователь) - '.$_POST['producer']."\n".
    7. ' Длина помещения (м.) - '.$_POST['sq']."\n".
    8. ' Ширина помещения (м.) - '.$_POST['sirina28']."\n".
    9. ' Углы (шт.) - '.$_POST['count_ugl']."\n".
    10. ' Трубы (шт.) - '.$_POST['count_svet']."\n".
    11. ' Люстры (шт.) - '.$_POST['count_lustra']."\n".
    12. ' Светильники (шт.) - '.$_POST['count_plintus']."\n".
    13. ' Имя - '.$_POST['imy']."\n".
    14. ' Телефон - '.$_POST['tele']."\n".
    15. ' Сумма заказа - '.$_POST['result']."\n";
    16. mail($to, $subject, $message);
    17.  
    18. if(isset($_POST['check30']))
    19. $message .= 'Маскировочная лента была выбрана пользователем!'."\n"."\n";
    20.  
    21. $message .= 'Пояснение для (обработчиков заказа сайта Бекас натяжные потолки):'."\n"."\n".
    22. 'Фактура (по какой цене заказал пользователь) – (здесь указана цена фактуры) согласно ниже указанных фактур можно определить какую фактуру заказал пользователь! '."\n"."\n".
    23. '300 - Глянец, мат, сатин, (белый) - 300 р. м./кв.
    24. 350 - Глянец, мат, сатин, (цветной) - 350 р. м./кв.
    25. 400 - Глянец, мат, сатин, (широкоформатный) - 400 р. м./кв.
    26. 600 - Глянец (принты) - 600 р. м./кв.
    27. 350 - Мат (фактурный) - 350 р. м./кв.'."\n"."\n".
    28.  
    29. 'Напоминание углы считаются от 7 шт. - 100 руб. за каждый последующий угол! То есть в сообщении приходит столько углов сколько пользователь поставил, в калькуляторном поле!'."\n"."\n".
    30.  
    31. 'Если пришло в сообщении после Суммы (Маскировочная лента была выбрана пользователем!) – это означает что пользователь поставил галочку в калькуляторе  Маскировочная лента (вставка), если пользователь не ставил галочку, то сообщение (Маскировочная лента была выбрана пользователем!) вам не придет на почту!'.
    32. $_POST[''];
    33.  
    34. ?>
     
  6. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.770
    Адрес:
    :сердА
    Re: Как отключить отправку формы, во время загрузки страницы

    Ты говоришь скрипту, чтобы он помер, в случае пустого POST, и удивляешься, что оно перестало работать?

    Проверка это:
    Код (Text):
    1. if ( empty($_POST["sq"]) || empty($_POST["sq"]) )
    2. {
    3. //Отправить письмо, сделать то, для чего нужен был POST
    4. }
     
  7. donec2009

    donec2009 Новичок

    С нами с:
    7 фев 2015
    Сообщения:
    16
    Симпатии:
    0
    Re: Как отключить отправку формы, во время загрузки страницы

    спасибо всем за помощь, решил проблему иначе, сделал два файла php один сам скрипт где находится калькулятор и вслучае нажатии кнопки отправляет на второй php где отправляется форма, вот так, Спасибо еще раз!
     
  8. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Re: Как отключить отправку формы, во время загрузки страницы

    Редирект в случае успеха обратно на первый ещё можно присобачить. И будет красиво.
     
  9. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.770
    Адрес:
    :сердА
    Re: Как отключить отправку формы, во время загрузки страницы

    Молодец же.