За последние 24 часа нас посетил 30551 программист и 1808 роботов. Сейчас ищет 841 программист ...

Обработчик формы

Тема в разделе "Прочие вопросы по PHP", создана пользователем KING_PHP, 5 июн 2015.

  1. KING_PHP

    KING_PHP Активный пользователь

    С нами с:
    18 апр 2015
    Сообщения:
    154
    Симпатии:
    3
    Адрес:
    Волгоград
    Есть:
    Код (PHP):
    1.     <link rel="stylesheet" href="css/reset.css"> 
    2.     <link rel="stylesheet" href="css/style.css"> 
    3.     <script src="js/modernizr.js"></script> 
    4.         <script type="text/javascript" src="js/jquery-latest.js"></script>
    5.     <script type="text/javascript" src="js/bootstrap-dropdown.js"></script>
    6.     <script type="text/javascript" src="js/bootstrap-tab.js"></script>
    7.     <script type="text/javascript" src="js/bootstrap-tooltip.js"></script>
    8.     <script type="text/javascript" src="js/bootstrap-alert.js"></script>
    9. <style>
    10. .item.none-color
    11. {
    12.     background-color: #FFF;
    13. }
    14. /* Светло-фиолетовый */
    15. .item.lightfiolet-color
    16. {
    17.     border-color: #a116d1;
    18.     background-color: #bb1af4;
    19.     color: #e6a0f8;
    20.     border-color: #a116d1;
    21.     color: #f6e8f7;
    22.     background-color: #9e16ce;
    23.     background-color: #e6a0f8;
    24. }
    25.  
    26. /* Тёмно-фиолетовый */
    27. .item.darkfiolet-color
    28. {
    29.     border-color: #7422c5;
    30.     background-color: #8227de;
    31.     color: #d6abfb;
    32.     border-color: #7422c5;
    33.     color: #efe6f7;
    34.     background-color: #721fc5;
    35.     background-color: #d6abfb;
    36. }
    37.  
    38. /* Оранжевый */
    39. .item.orange-color
    40. {
    41.     border-color: #eb7f1d;
    42.     background-color: #fe8e28;
    43.     color: #ffcd8e;
    44.     border-color: #eb7f1d;
    45.     color: #faf2e7;
    46.     background-color: #e37a1e;
    47.     background-color: #ffcd8e;
    48. }
    49.  
    50. /* Синий */
    51. .item.blue-color
    52. {
    53.     border-color: #0083d5;
    54.     background-color: #0093eb;
    55.     color: #a1dbff;
    56.     border-color: #0083d5;
    57.     color: #e6f0f9;
    58.     background-color: #0083d3;
    59.     background-color: #a1dbff;
    60. }
    61.  
    62. /* Зелёный */
    63. .item.green-color
    64. {
    65.     border-color: #00bc6c;
    66.     background-color: #00db81;
    67.     color: #6cfdd2;
    68.     border-color: #00bc6c;
    69.     color: #e2f9f3;
    70.     background-color: #00be71;
    71.     background-color: #6cfdd2;
    72. }
    73.  
    74. /* Красный */
    75. .item.red-color
    76. {
    77.     border-color: #e01447;
    78.     background-color: #ff1850;
    79.     
    80.     color: #ffa7c0;
    81.     border-color: #e01447;
    82.     color: #fee8ea;
    83.     background-color: #de1446;
    84.     background-color: #ffa7c0;
    85. }
    86. </style>
    87.  
    88.     <form class="cd-form floating-labels">
    89.         <fieldset>
    90.             <legend>=)</legend>
    91.             <div>
    92.                 <h4>Cервер</h4>
    93.  
    94.                 <class="cd-select icon">
    95.                     <select class="budget" name="server">
    96.                         <option value="0">Пусто</option>
    97.                         <option value="1">< $5000</option>
    98.                     </select>
    99.                 </p>
    100.             </div> 
    101.  
    102.             <div>
    103.                 <h4>Статус</h4>
    104.  
    105.                 <ul class="cd-form-list">
    106.                     <li>
    107.                         <input type="checkbox" id="vip" name="vip">
    108.                         <label for="vip">VIP</label>
    109.                     </li>
    110.                         
    111.                     <li>
    112.                         <input type="checkbox" name="top" id="top" name="top">
    113.                         <label for="top">TOP</label>
    114.                     </li>
    115.  
    116.                     <li>
    117.                         <input type="checkbox" id="vote" name="vote">
    118.                         <label for="vote">VOTES(Голоса)</label>
    119.                     </li>
    120.                 </ul>
    121.             </div>
    122.  
    123. <div id="votifier" style="display: none;">
    124. <ul class="cd-form-list">
    125.                     <li>
    126.                         <input type="radio" id="color1" checked name="color1">
    127. <label for="color1">
    128. none [FREE]
    129. </label>
    130.                     </li>
    131.                                         <li>
    132.                     <input type="radio"  id="color2" name="color2">
    133. <label for="color2">
    134. darkfiolet [5р]
    135. </label>
    136.                     </li>
    137.                     
    138.                     <li>
    139.                     <input type="radio" id="color3" name="color3">
    140. <label for="color3">
    141. orange [5р]
    142. </label>
    143.                     </li>
    144.                     
    145.                     <li>
    146.                     <input type="radio" id="color4" name="color4">
    147. <label for="color4">blue [5р]</label>
    148.                     </li>
    149.                     
    150.                     <li>
    151.                     <input type="radio"id="color5" name="color5">
    152. <label for="color5">green [5р]</label>
    153.                     </li>
    154.                     
    155.                     <li>
    156.                     <input type="radio"  id="color6" name="color6">
    157. <label for="color6">red [5р]</label>
    158.                     </li><br>
    159.                     
    160.                     <li>
    161.                     <input type="radio"  id="color7" name="color7">
    162. <label for="color7"> [20р]</label>
    163.                     </li>
    164.     </ul>                
    165.     </div>                     
    166. </div>
    167.  
    168.             <div id="viptop" style="display: none;">
    169.                 <h4>Время</h4>
    170.  
    171.                 <ul class="cd-form-list">
    172.                     <li>
    173.                         <input type="checkbox" id="day1" name="day1">
    174.                         <label for="day1" >7</label>
    175.                     </li>
    176.  
    177.                     <li>
    178.                         <input type="checkbox" id="day2" checked name="day2">
    179.                         <label for="day2"> 14</label>
    180.                     </li>
    181.  
    182.                     <li>
    183.                         <input type="checkbox" id="day3" name="day3">
    184.                         <label for="day3" >21</label>
    185.                     </li>
    186.                                         <li>
    187.                         <input type="checkbox" id="day4" name="day4">
    188.                         <label for="day4" >30</label>
    189.                     </li>
    190.  
    191.                     <li>
    192.                         <input type="checkbox" id="day5" name="day5">
    193.                         <label for="day5" >60</label>
    194.                     </li>
    195.                                         <li>
    196.                         <input type="checkbox" id="day6" name="day6">
    197.                         <label for="day6" >90</label>
    198.                     </li>
    199.  
    200.                     <li>
    201.                         <input type="checkbox" id="day7" name="day7">
    202.                         <label for="day7" >180</label>
    203.                     </li>
    204.                 </ul>
    205.             </div>
    206.             <div id="votes" style="display: none;">
    207.                 <h4>Голоса</h4>
    208.  
    209.                 <ul class="cd-form-list">
    210.                     <li>
    211.                         <input type="checkbox" id="vote1" checked name="vote1">
    212.                         <label for="vote1" >60г\40р</label>
    213.                     </li>
    214.  
    215.                     <li>
    216.                         <input type="checkbox" id="vote2" name="vote2">
    217.                         <label for="vote2" >80г\80р</label>
    218.                     </li>
    219.                     <li>
    220.                         <input type="checkbox" id="vote3" name="vote3">
    221.                         <label for="vote3" >120г\120р</label>
    222.                     </li>
    223.  
    224.                     <li>
    225.                         <input type="checkbox" id="vote4" name="vote4">
    226.                         <label for="vote4" >160г\160р</label>
    227.                     </li>
    228.                     <li>
    229.                         <input type="checkbox" id="vote5" name="vote5">
    230.                         <label for="vote5" >200г\200р</label>
    231.                     </li>
    232.  
    233.                     <li>
    234.                         <input type="checkbox" id="vote6" name="vote6">
    235.                         <label for="vote6" >240г\240р</label>
    236.                     </li>
    237.                     <li>
    238.                         <input type="checkbox" id="vote7" name="vote7">
    239.                         <label for="vote7" >400г\400р</label>
    240.                     </li>
    241.                 </ul>
    242.             </div>
    243.             <div>
    244.                   <input type="submit" value="Send Message">
    245.             </div>
    246.         </fieldset>
    247.     </form>
    248. <script>
    249. $(document).ready(function(){
    250.     $('#vip').on('change', function(){
    251.          if ($('#vip').prop('checked')) {
    252.              $('#viptop').fadeIn();
    253.          } else {
    254.              $('#viptop').fadeOut();
    255.          }
    256.     });
    257. });
    258. $(document).ready(function(){
    259.     $('#vote').on('change', function(){
    260.          if ($('#vote').prop('checked')) {
    261.              $('#votes').fadeIn();
    262.          } else {
    263.              $('#votes').fadeOut();
    264.          }
    265.     });
    266. });
    267. $(document).ready(function(){
    268.     $('#top').on('change', function(){
    269.          if ($('#top').prop('checked')) {
    270.              $('#votifier').fadeIn();
    271.          } else {
    272.              $('#votifier').fadeOut();
    273.          }
    274.     });
    275. });
    276. $(document).ready(function(){
    277.     $('#top').on('change', function(){
    278.          if ($('#top').prop('checked')) {
    279.              $('#viptop').fadeIn();
    280.          } else {
    281.              $('#viptop').fadeOut();
    282.          }
    283.     });
    284. });
    285. </script>
    286. <script src="js/jquery-2.1.1.js"></script>
    287. <script src="js/main.js"></script> 
    288. </body>
    289. </html>
    Для него над сделать обработчик.
    И тут проблемы:
    1. Нужно проверить заполнение полей. При проверка day если поле top или vip = on, а поля vote1 и др при если только vote= on
    2. вывести к каждому из полей свою стоимость. На пимер в поде day не передаётся цена. там передаётся то на что умножаем поля vip или top, на пример vip = 15*7-25%= 78.75р
    3. Сложить все данные и вывести сумму.
    4. Снять с счёта аккаунта общею сумму.
    5. Зачислить vip/top/vote в таблицу сервера, значения vip = 1 - куплен вып top = 1 куплен топ vote = число голосов.
    Я начал. закончить не могу, запутался жестоко.
    Код (PHP):
    1. <?
    2.  //Сервер  
    3.  
    4.     $server = $_POST['server'];
    5.      $on = 'on';
    6.     $vip = $_POST['vip'];
    7.     $top = $_POST['top'];
    8.     $vote = $_POST['vote'];
    9. if (strcmp($vip, $on) == 0) { 
    10. $vip = '10'; $sallevip ='25';}
    11. elseif (strcmp($top, $on) == 0) { 
    12. $top = '15'; $salletop ='25';}
    13. elseif (strcmp($vote, $on) == 0) { 
    14. $vote = ''};
    15.  
    16.     $day1 = $_POST['day1'];  
    17.     $day2 = $_POST['day2'];  
    18.     $day3 = $_POST['day3'];  
    19.     $day4 = $_POST['day4'];  
    20.     $day5 = $_POST['day5'];  
    21.     $day6 = $_POST['day6'];  
    22.     $day7 = $_POST['day7'];
    23.     
    24.     $color1 = $_POST['color1'];
    25.     $color2 = $_POST['color2'];
    26.     $color3 = $_POST['color3'];
    27.     $color4 = $_POST['color4'];
    28.     $color5 = $_POST['color5'];
    29.     $color6 = $_POST['color6'];
    30.     $color7 = $_POST['color7']; 
    31.  
    32.     $vote1 = $_POST['vote1'];
    33.     $vote2 = $_POST['vote2'];
    34.     $vote3 = $_POST['vote3'];
    35.     $vote4 = $_POST['vote4'];
    36.     $vote5 = $_POST['vote5'];
    37.     $vote6 = $_POST['vote6'];
    38.     $vote7 = $_POST['vote7'];
    39.  
    40. //Цвета
    41.     if (strcmp($color1, $on) == 0) { 
    42. $color1 = '5'; $color = 'lightfiolet'; }
    43. elseif (strcmp($color2, $on) == 0) { 
    44. $color2 = '5'; $color = 'darkfiolet'; }
    45. elseif (strcmp($color3, $on) == 0) { 
    46. $color3 = '5'; $color = 'orange'; }
    47. elseif (strcmp($color4, $on) == 0) { 
    48. $color4 = '5'; $color = 'blue'; }
    49. elseif (strcmp($color5, $on) == 0) { 
    50. $color5 = '5'; $color = 'green'; }
    51. elseif (strcmp($color6, $on) == 0) { 
    52. $color6 = '5'; $color = 'red'; }
    53. elseif (strcmp($color7, $on) == 0) { 
    54. $color7 = '20'; $color = 'random'; }; 
    55.  
    56. if (strcmp($day1, $on) == 0) { 
    57. $day1 = '7';}
    58. elseif (strcmp($day2, $on) == 0) { 
    59. $day2 = '14';}
    60. elseif (strcmp($day3, $on) == 0) { 
    61. $day3 = '21';}
    62. elseif (strcmp($day4, $on) == 0) { 
    63. $day4 = '30';}
    64. elseif (strcmp($day5, $on) == 0) { 
    65. $day5 = '60';}
    66. elseif (strcmp($day6, $on) == 0) { 
    67. $day6 = '90';}
    68. elseif (strcmp($day7, $on) == 0) { 
    69. $day7 = '180';}; 
    70.          
    71.  if (strcmp($vote1, $on) == 0) { 
    72. $vote1 = '40'; $votes="60";}
    73. elseif (strcmp($vote2, $on) == 0) { 
    74. $vote2 = '80'; $votes="80";}
    75. elseif (strcmp($vote3, $on) == 0) { 
    76. $vote3 = '120'; $votes="120";}
    77. elseif (strcmp($vote4, $on) == 0) { 
    78. $vote4 = '160'; $votes="160";}
    79. elseif (strcmp($vote5, $on) == 0) { 
    80. $vote5 = '200'; $votes="200";}
    81. elseif (strcmp($vote6, $on) == 0) { 
    82. $vote6 = '240'; $votes="240";}
    83. elseif (strcmp($vote7, $on) == 0) { 
    84. $vote7 = '400'; $votes="400";};      
    85.      ?>
    Добавлено спустя 46 минут 55 секунд:
    Fa, пока кто-то напишет пойду снесу все что сделал и сделаю разные формы для vip, top, vote :D