За последние 24 часа нас посетили 17535 программистов и 1308 роботов. Сейчас ищут 952 программиста ...

Приходят незаполненные формы.

Тема в разделе "Работа с почтой", создана пользователем yotobo, 19 май 2013.

  1. yotobo

    yotobo Новичок

    С нами с:
    19 май 2013
    Сообщения:
    13
    Симпатии:
    0
    Приветствую гуру PHP ! Я новичок и прошу помочь с одной проблемкой.Бьюсь неделю с ней.После заполнения формы-анкеты на почту приходят пустые формы типа:
    Заказчик:
    Электронная почта:
    Шаблон сайта:
    Название сайта:
    Контент сайта:
    Имя сайта:
    Доменное имя:
    Домен:
    Хостинг:
    Техподдержка:
    Дополнительная сумма:
    Хостинг Джино.И поддержка хостинга помочь не смогла никак. Хотя скрипт прекрасно работает на локальном хосте.Проверялся на Денвере и на Open Server.
    Вот код обработчика:
    Код (Text):
    1.  <?php
    2. session_start();
    3. if (md5($_POST['norobot']) == $_SESSION['randomnr2'])   {
    4. }   else {  
    5. echo "<p><b>Заказ не принят. Приносим свои извинения.";
    6. echo "<p><b>Попробуйте повторить отправку позже";
    7. exit;
    8. }
    9. if (isset($_POST['$person'])) {$person = $_POST['$person'];}
    10. if (isset($_POST['$mail'])) {$mail = $_POST['$mail'];}
    11. if (isset($_POST['$myshab'])) {$myshab = $_POST['$myshab'];}
    12. if (isset($_POST['$sitename'])) {$sitename = $_POST['$sitename'];}
    13. if (isset($_POST['$content'])) {$content = $_POST['$content'];}
    14. if (isset($_POST['$login'])) {$login = $_POST['$login'];}
    15. if (isset($_POST['$tmail'])) {$tmail = $_POST['$tmail'];}
    16. if (isset($_POST['$domen'])) {$domen = $_POST['$domen'];}
    17. if (isset($_POST['$hosting'])) {$hosting = $_POST['$hosting'];}
    18. if (isset($_POST['$outsorce'])) {$outsorce = $_POST['$outsorce'];}
    19. if (isset($_POST['$total'])) {$total = $_POST['$total'];}
    20. $to = "demo@test1.ru";
    21. $headers = "Content-type: text/plain; charset = utf-8";
    22. $subject = "Заказ сайта за 550 рублей";
    23. $message = "Заказчик: $person \nЭлектронная почта: $mail \nШаблон сайта: $myshab \nНазвание сайта: $sitename \nКонтент сайта: $content  \nИмя сайта: $login \nДоменное имя: $tmail  \nДомен: $domen \nХостинг: $hosting \nТехподдержка: $outsorce \nДополнительная сумма: $total";
    24. $verify = mail ($to, $subject, $message, $headers,"Content-type:text/plain; charset = utf-8\r\nFrom:$email");
    25. if ($verify == 'true')
    26. {
    27. echo "<center><b>Спасибо! Ваш заказ принят в обработку.В ближайшее время с вами свяжется наш менеджер.<p><br>Вернуться <a href='http://sybermedia.ru'> на сайт компании </a></center>";
    28. }
    29. else
    30. {
    31. echo "<p><b>Заказ не принят. Приносим свои извинения.";
    32. echo "<p><b>Попробуйте повторить отправку позже";
    33. }
    34. ?>
    Здесь http://rghost.ru/46101628 можно скачать весь скрипт.
    Помогите пожалуйста.
     
  2. Ganzal

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

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    а вот попробуйте каждую свою нелогичную строку типа if (isset($_POST['$person'])) {$person = $_POST['$person'];} заменить на
    $person = ( isset($_POST['$person'] ) ? $person = $_POST['$person'] : 'нет значения');
    и после этого повторите отправку формы/письма. пришла форма, заполненная фразами "нет значения"?
     
  3. Deonis

    Deonis Старожил

    С нами с:
    15 фев 2013
    Сообщения:
    1.521
    Симпатии:
    504
    Кроме всего прочего, проверьте, что в теге <form> прописан атрибут method со значением POST. Т.е. <form action="/path_to_handler/" method="post">
     
  4. yotobo

    yotobo Новичок

    С нами с:
    19 май 2013
    Сообщения:
    13
    Симпатии:
    0
    Формы все передают методом POST,это не проблема

    Добавлено спустя 1 минуту 42 секунды:
    Спасибо,это работает.А как убрать теперь 'нет значения' ?
     
  5. Ganzal

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

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    все поля пришли "нет значения" или только пропущенные в форме?
     
  6. Deonis

    Deonis Старожил

    С нами с:
    15 фев 2013
    Сообщения:
    1.521
    Симпатии:
    504
    Посмотрел я ваш код... "Месье знает толк в извращениях?". Легкий налет раздражения не столько от глупых ошибок, как от реализации задуманного. Но это дело ваше. В общем тонкий намек:

    Код (PHP):
    1. <?php
    2. if (isset($_POST['person'])) {$name = $_POST['person'];}
    3. echo "$person"; // Что за убогий способ выводить данные переменой? 
    4.                        // И откуда она взялась, если вы присваиваете значение в $name?
    5. ?>
     
  7. yotobo

    yotobo Новичок

    С нами с:
    19 май 2013
    Сообщения:
    13
    Симпатии:
    0
    Вообще-то код не мой. Я взял информацию здесь http://www.seomark.ru/forma_double.html была нужна многостраничная форма,перепробовал кучу вариантов,этот работает,но только на локальном хосте

    и в коде не может быть $name , я выкладывал исправленный код
    Код (Text):
    1.  
    2. if (isset($_POST['$person'])) {$person = $_POST['$person'];}
    3. if (isset($_POST['$myshab'])) {$myshab = $_POST['$myshab'];}
    4. if (isset($_POST['$sitename'])) {$sitename = $_POST['$sitename'];}
    5. if (isset($_POST['$content'])) {$content = $_POST['$content'];}
    6. if (isset($_POST['$login'])) {$login = $_POST['$login'];}
    7. if (isset($_POST['$tmail'])) {$tmail = $_POST['$tmail'];}
    8. if (isset($_POST['$domen'])) {$domen = $_POST['$domen'];}
    9. if (isset($_POST['$hosting'])) {$hosting = $_POST['$hosting'];}
    10. if (isset($_POST['$outsorce'])) {$outsorce = $_POST['$outsorce'];}
    11. if (isset($_POST['$total'])) {$total = $_POST['$total'];}
    Добавлено спустя 3 минуты 30 секунд:
    пропущенные остались пустыми
     
  8. Ganzal

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

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    Deonis, если у тебя есть возможность помолчать - помолчи. я тут занимаюсь последовательной технической поддержкой для разрешения возникшей у ТС проблемы. твои заявления про толк вы извращениях и тонкие намеки не помогают ТС и отвлекают его от ответа на мои вопросы. в общем либо молчишь, либо ведешь от и до. за адекватностью твоих ответов буду следить и буду добиваться бана если вдруг будет превышен лимит установленный моим разумом. ок? спасибо за понимание.

    как это? а не пропущенные вернули 'нет значения' что ли?
     
  9. yotobo

    yotobo Новичок

    С нами с:
    19 май 2013
    Сообщения:
    13
    Симпатии:
    0
    в заполненных полях имя и e-mail пришло 'нет значения' а в другие я не заполнял,они так и остались пустыми...

    Добавлено спустя 3 минуты 8 секунд:
    я сейчас нашел электронную книгу у себя в архивах и код очень похож на код от Евгения Попова и там говорится,что бывают проблемы на хостингах с глобальными переменными
     
  10. Ganzal

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

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    так, прошу прощения, это моя опечатка, вызванная тупым копипастом вашего кода

    Код (Text):
    1. $person = ( isset($_POST['person'] ) && strlen( $_POST['person'] ) ? $_POST['person'] : 'нет значения');
    вот так попробуйте.
    ваш код содержит _POST['$var'] - то есть вы ищите ключ $var - сомневаюсь что в вашей форме он именно $var называется а не просто var
    это раз. и два - ваш подход к объявлению переменных в случае если есть такие ключи будет вызывать огромное кол-во предупреждений. мой подход занимается грамотным определением переменных - есть ключ и не пустая строка? его значение. нет ключа? значение по умолчанию. в реале надо еще усложнить, но пока с этим поработайте.
     
  11. yotobo

    yotobo Новичок

    С нами с:
    19 май 2013
    Сообщения:
    13
    Симпатии:
    0
    Внес изменения,как вы сказали.Вот что пришло:
    Заказчик: нет значения
    Электронная почта: trust@mail.com
    Шаблон сайта: нет значения
    Название сайта: нет значения
    Контент сайта: нет значения
    Имя сайта: нет значения
    Доменное имя: hop.ru
    Домен: нет значения
    Хостинг: нет значения
    Техподдержка: нет значения
    Дополнительная сумма: нет значения
    Заполнял поля: Заказчик и электронная почта,остальные оставил пустыми
     
  12. Ganzal

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

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    код формы и код формирующий письмо можно увидеть?
     
  13. yotobo

    yotobo Новичок

    С нами с:
    19 май 2013
    Сообщения:
    13
    Симпатии:
    0
    Формы разбиты постранично
    Код (Text):
    1.  
    2. <html>
    3. <head>
    4. <meta http-equiv="content-type" content="text/html; charset=utf-8">
    5. <script type="text/javascript" src="js/jquery-1.9.1.min.js"></script>
    6. </head>
    7. <body>
    8. <center>
    9. <p> Эта форма поможет вам быстро заказать у нас изготовление сайта визитки </p>
    10. <br>
    11. <form method="post" action="mail.php">
    12. Ваше имя:<br />
    13. <input name="person" type="text" value="" size="30"/>
    14. <br />
    15. <br />
    16. <input type="submit" value="Далее"/>
    17. </form>
    18. </center>
    19. </body>
    20. </html>
    следующая

    Код (Text):
    1.  
    2. <html>
    3. <head>
    4. <meta http-equiv="content-type" content="text/html; charset=utf-8">
    5. <link href="css/styles.css" rel="stylesheet" type="text/css">
    6. <script type="text/javascript" src="js/jquery-1.9.1.min.js"></script>
    7. </head>
    8. <body>
    9. <div  id="index">
    10. <div id="fon">
    11. <div id="form">
    12. <center>
    13. <p> Введите ваш e-mail и телефон для связи </p>
    14. <br>
    15. <form method="post" action="design.php">
    16. <textarea style="display:none" name="person" rows="1" cols="30">
    17. <?php
    18. if (isset($_POST['person'])) {$name = $_POST['person'];}
    19. echo "$person";
    20. ?>
    21. </textarea>
    22. Ваш e-mail (для ответа):<br />
    23. <input name="mail" type="text" value="" size="30" />
    24. <br />
    25. <br />
    26. <input type="submit" value="Далее" />
    27. </form>
    28. </center>
    29. </div>
    30. </div>
    31. </div>
    32. </body>
    33. </html>
    сдедующая

    Код (Text):
    1.  
    2. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    3. <html>
    4. <head>
    5. <meta http-equiv="content-type" content="text/html; charset=utf-8">
    6. <link href="css/styles.css" rel="stylesheet" type="text/css">
    7. <script type="text/javascript" src="js/jquery-1.9.1.min.js"></script>
    8. </head>
    9. <body>
    10. <div  id="index">
    11. <div id="fon">
    12. <div id="selecter">
    13. <p> Выберите макет для будущего сайта </p>
    14. <br>
    15. <form method='post'action="siteinfo.php">
    16. <textarea style="display:none" name="person" rows="1" cols="30">
    17. <?php
    18. if (isset($_POST['person'])) {$name = $_POST['person'];}
    19. echo "$person";
    20. ?>
    21. </textarea>
    22. <textarea style="display:none" name="mail" rows="1" cols="10">
    23. <?php
    24. if (isset($_POST['mail'])) {$mail = $_POST['mail'];}
    25. echo "$mail";
    26. ?>
    27. </textarea>
    28. <center>
    29. <input id="Radio1" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №1">
    30. <label id="shablon1" for="Radio1" class="CheckBoxLabelClass1" >Шаблон №1</label>
    31. <img src="images/01.gif" width="107" height="77" />
    32. &nbsp;&nbsp;
    33. <input id="Radio2" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №2">
    34. <label id="shablon2" for="Radio2" class="CheckBoxLabelClass1" >Шаблон №2</label>
    35. <img src="images/02.gif" width="110" height="77" />
    36. &nbsp;&nbsp;
    37. <input id="Radio3" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №3">
    38. <label id="shablon3" for="Radio3" class="CheckBoxLabelClass1" >Шаблон №3</label>
    39. <img src="images/03.gif" width="108" height="77" /><br>
    40. <input id="Radio4" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №4">
    41. <label id="shablon4" for="Radio4" class="CheckBoxLabelClass1" >Шаблон №4</label>
    42. <img src="images/04.gif" width="108" height="77" />
    43. &nbsp;&nbsp;
    44. <input id="Radio5" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №5">
    45. <label id="shablon5" for="Radio5" class="CheckBoxLabelClass1">Шаблон №5</label>
    46. <img src="images/05.gif" width="107" height="81" />
    47. &nbsp;&nbsp;
    48. <input id="Radio6" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №6">
    49. <label id="shablon6" for="Radio6" class="CheckBoxLabelClass1" >Шаблон №6</label>
    50. <img src="images/06.gif" width="110" height="81" /><br>
    51. <input id="Radio7" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №7">
    52. <label id="shablon7" for="Radio7" class="CheckBoxLabelClass1" >Шаблон №7</label>
    53. <img src="images/07.gif" width="108" height="81" />
    54. &nbsp;&nbsp;
    55. <input id="Radio8" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №8">
    56. <label id="shablon8" for="Radio8" class="CheckBoxLabelClass1" >Шаблон №8</label>
    57. <img src="images/08.gif" width="108" height="81" />
    58. &nbsp;&nbsp;
    59. <input id="Radio9" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №9">
    60. <label id="shablon9" for="Radio9" class="CheckBoxLabelClass1" >Шаблон №9</label>
    61. <img src="images/09.gif" width="107" height="79" /><br>
    62. <input id="Radio10" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №10">
    63. <label id="shablon10" for="Radio10" class="CheckBoxLabelClass1" >Шаблон №10</label>
    64. <img src="images/10.gif" width="110" height="79" />
    65. <input id="Radio11" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №11">
    66. <label id="shablon11" for="Radio11" class="CheckBoxLabelClass1" >Шаблон №11</label>
    67. <img src="images/11.gif" width="108" height="79" />
    68. <input id="Radio12" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №12">
    69. <label id="shablon12" for="Radio12" class="CheckBoxLabelClass1" >Шаблон №12</label>
    70. <img src="images/12.gif" width="108" height="79" /><br>
    71. <input id="Radio13" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №13">
    72. <label id="shablon13" for="Radio13" class="CheckBoxLabelClass1" >Шаблон №13</label>
    73. <img src="images/13.gif" width="107" height="80" />
    74. <input id="Radio14" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №14">
    75. <label id="shablon14" for="Radio14" class="CheckBoxLabelClass1" >Шаблон №14</label>
    76. <img src="images/14.gif" width="110" height="80" />
    77. <input id="Radio15" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №15">
    78. <label id="shablon15" for="Radio15" class="CheckBoxLabelClass1" >Шаблон №15</label>
    79. <img src="images/15.gif" width="108" height="80" /><br>
    80. <input id="Radio16" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №16">
    81. <label id="shablon16" for="Radio16" class="CheckBoxLabelClass1" >Шаблон №16</label>
    82. <img src="images/16.gif" width="108" height="80" />
    83. <input id="Radio17" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №17">
    84. <label id="shablon17" for="Radio17" class="CheckBoxLabelClass1" >Шаблон №17</label>
    85. <img src="images/17.gif" width="107" height="81" />
    86. <input id="Radio18" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №18" >
    87. <label id="shablon18" for="Radio18" class="CheckBoxLabelClass1" >Шаблон №18</label>
    88. <img src="images/18.gif" width="110" height="81" /><br>
    89. <input id="Radio19" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №19">
    90. <label id="shablon19" for="Radio19" class="CheckBoxLabelClass1" >Шаблон №19</label>
    91. <img src="images/19.gif" width="108" height="81" />
    92. <input id="Radio20" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №20">
    93. <label id="shablon20" for="Radio20" class="CheckBoxLabelClass1" >Шаблон №20</label>
    94. <img src="images/20.gif" width="108" height="81" />
    95. <input id="Radio21" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №21">
    96. <label id="shablon21" for="Radio21" class="CheckBoxLabelClass1" >Шаблон №21</label>
    97. <img src="images/21.gif" width="107" height="79" /><br>
    98. <input id="Radio22" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №22">
    99. <label id="shablon22" for="Radio22" class="CheckBoxLabelClass1" >Шаблон №22</label>
    100. <img src="images/22.gif" width="110" height="79" />
    101. <input id="Radio23" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №23">
    102. <label id="shablon23" for="Radio23" class="CheckBoxLabelClass1" >Шаблон №23</label>
    103. <img src="images/23.gif" width="108" height="79" />
    104. <input id="Radio24" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №24">
    105. <label id="shablon24" for="Radio24" class="CheckBoxLabelClass1" >Шаблон №24</label>
    106. <img src="images/24.gif" width="108" height="79" /><br>
    107. <input id="Radio25" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №25">
    108. <label id="shablon25" for="Radio25" class="CheckBoxLabelClass1" >Шаблон №25</label>
    109. <img src="images/25.gif" width="107" height="81" />
    110. <input id="Radio26" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №26">
    111. <label id="shablon26" for="Radio26" class="CheckBoxLabelClass1" >Шаблон №26</label>
    112. <img src="images/26.gif" width="110" height="81" />
    113. <input id="Radio27" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №27">
    114. <label id="shablon27" for="Radio27" class="CheckBoxLabelClass1" >Шаблон №27</label>
    115. <img src="images/27.gif" width="108" height="81" /><br>
    116. <input id="Radio28" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №28">
    117. <label id="shablon28" for="Radio28" class="CheckBoxLabelClass1" >Шаблон №28</label>
    118. <img src="images/28.gif" width="108" height="81" />
    119. <input id="Radio29" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №29">
    120. <label id="shablon29" for="Radio29" class="CheckBoxLabelClass1" >Шаблон №29</label>
    121. <img src="images/29.gif" width="107" height="80" />
    122. <input id="Radio30" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №30">
    123. <label id="shablon30" for="Radio30" class="CheckBoxLabelClass1" >Шаблон №30</label>
    124. <img src="images/30.gif" width="110" height="80" /><br>
    125. <input id="Radio31" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №31">
    126. <label id="shablon31" for="Radio31" class="CheckBoxLabelClass1" >Шаблон №31</label>
    127. <img src="images/31.gif" width="108" height="80" />
    128. <input id="Radio32" name="myshab" class="CheckBoxClass" type="radio" value="Шаблон №32">
    129. <label id="shablon32" for="Radio30" class="CheckBoxLabelClass1" >Шаблон №32</label>
    130. <img src="images/32.gif" width="108" height="80" /><br>
    131. <br>
    132. <input type="submit" value="Далее" />
    133. </center>
    134. </form>
    135. <script>
    136. $(document).ready(function(){  
    137. $(".CheckBoxClass:radio").change(function(){
    138. $(".CheckBoxClass:radio + .CheckBoxLabelClass1").removeClass("LabelSelected");
    139. $(this).next("label").addClass("LabelSelected");
    140. });  
    141. });  
    142. </script>
    143. </div>
    144. </div>
    145. </div>
    146. </body>
    147. </html>
    еще одна

    Код (Text):
    1.  
    2. <html>
    3. <head>
    4. <style>
    5. * { margin: 0; padding: 0; }
    6. select { padding: 2px; }
    7. </style>
    8. <style>
    9. @import url(css/suitup.css);
    10. </style>
    11. <meta http-equiv="content-type" content="text/html; charset=utf-8">
    12. <link href="css/styles.css" rel="stylesheet" type="text/css">
    13. <script type="text/javascript" src="js/jquery-1.9.1.min.js"></script>
    14. <script src="js/suitup.jquery.js"></script>
    15. <script src="js/extended-commands.suitup.jquery.js"></script>
    16. <script>
    17. $( function(){
    18. $('.suitup-textarea')
    19. .suitUp();
    20. });
    21. </script>
    22. </head>
    23. <body>
    24. <div  id="index">
    25. <div id="fon">
    26. <div id="form">
    27. <center>
    28. <p> Информация по будущему сайту </p>
    29. <br>
    30. <form method="post" action="options.php">
    31. <textarea style="display:none" name="person" rows="1" cols="30">
    32. <?php
    33. if (isset($_POST['person'])) {$name = $_POST['person'];}
    34. echo "$person";
    35. ?>
    36. </textarea>
    37. <textarea style="display:none" name="mail" rows="1" cols="10">
    38. <?php
    39. if (isset($_POST['mail'])) {$mail = $_POST['mail'];}
    40. echo "$mail";
    41. ?>
    42. </textarea>
    43. <textarea style="display:none" name="myshab" rows="1" cols="10">
    44. <?php
    45. if (isset($_POST['myshab'])) {$name = $_POST['myshab'];}
    46. echo "$myshab";
    47. ?>
    48. </textarea>
    49. Название сайта:<br />
    50. <input name="sitename" type="text" value="" size="50"/>
    51. <br />
    52. Информация на сайт:<br />
    53. <textarea class="suitup-textarea" name="content" rows="10" cols="30"></textarea>
    54. <br>
    55. <input type="submit" value="Далее" />
    56. </form>
    57. </center>
    58. </div>
    59. </div>
    60. </div>
    61. </body>
    62. </html>
    и заключительная

    Код (Text):
    1.  
    2. <html>
    3. <head>
    4. <meta http-equiv="content-type" content="text/html; charset=utf-8">
    5. <link href="css/styles.css" rel="stylesheet" type="text/css">
    6. <script type="text/javascript" src="js/jquery-1.9.1.min.js"></script>
    7. <script src="js/jquery.simplemodal.js" type="text/javascript"></script>
    8. <SCRIPT LANGUAGE="JavaScript">
    9. function checkChoice(whichbox) {
    10. with (whichbox.form) {
    11. if (whichbox.checked == false)
    12. hiddentotal.value = eval(hiddentotal.value) - eval(whichbox.value);
    13. else
    14. hiddentotal.value = eval(hiddentotal.value) + eval(whichbox.value);
    15. return(formatCurrency(hiddentotal.value));
    16. }
    17. }
    18. function formatCurrency(num) {
    19. num = num.toString().replace(/\$|\,/g,'');
    20. if(isNaN(num)) num = "0";
    21. cents = Math.floor((num*100+0.5)%100);
    22. num = Math.floor((num*100+0.5)/100).toString();
    23. if(cents < 10) cents = "0" + cents;
    24. for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
    25. num = num.substring(0,num.length-(4*i+3))+','+num.substring(num.length-(4*i+3));
    26. return (num + "." + cents);
    27. }
    28. </script>
    29. </head>
    30. <body>
    31. <div  id="index">
    32. <div id="fon">
    33. <div id="form">
    34. <center>
    35. <p> Выберите доменное имя сайта </p>
    36. <br>
    37. <form method="post" action="handler.php"  enctype="multipart/form-data">
    38. <textarea style="display:none" name="person" rows="1" cols="30">
    39. <?php
    40. if (isset($_POST['person'])) {$name = $_POST['person'];}
    41. echo "$person";
    42. ?>
    43. </textarea>
    44. <textarea style="display:none" name="mail" rows="1" cols="10">
    45. <?php
    46. if (isset($_POST['mail'])) {$mail = $_POST['mail'];}
    47. echo "$mail";
    48. ?>
    49. </textarea>
    50. <textarea style="display:none" name="myshab" rows="1" cols="10">
    51. <?php
    52. if (isset($_POST['myshab'])) {$name = $_POST['myshab'];}
    53. echo "$myshab";
    54. ?>
    55. </textarea>
    56. <textarea style="display:none" name="sitename" rows="1" cols="10">
    57. <?php
    58. if (isset($_POST['sitename'])) {$name = $_POST['sitename'];}
    59. echo "$sitename";
    60. ?>
    61. </textarea>
    62. <textarea style="display:none" name="content" rows="1" cols="10">
    63. <?php
    64. if (isset($_POST['content'])) {$name = $_POST['content'];}
    65. echo "$content";
    66. ?>
    67. </textarea>
    68. <textarea style="display:none" name="mURL" rows="1" cols="10">
    69. <?php
    70. if (isset($_POST['mURL'])) {$name = $_POST['mURL'];}
    71. echo "$mURL";
    72. ?>
    73. </textarea>
    74. Доменное имя:<br />
    75. <input type="text" name="login" size=20 value="" class="for1">
    76. <select name="tmail" size="1" class="for">
    77. <option value="hop.ru" >hop.ru</option>
    78. <option value="bos.ru" >bos.ru</option>
    79. <option value="viptop.ru" >viptop.ru</option>
    80. <option value="vipshop.ru" >vipshop.ru</option>
    81. <option value="vipcentr.ru" >vipcentr.ru</option>
    82. <option value="webservis.ru" >webservis.ru</option>
    83. <option value="far.ru" >far.ru</option>
    84. </select>
    85. <br>
    86. <p> Дополнительные опции (по желанию) </p>
    87. <br>
    88. <center>
    89. <table bgcolor="#FE9A2E">
    90. <tr>
    91. <td>
    92. <pre>
    93. <b>Платные опции (стоимость в рублях)</b>
    94. Регистрация домена RU 300 <input type=checkbox name=domen value="300" onClick="this.form.total.value=checkChoice(this);">
    95. Размещение сайта на сервере 650 <input type=checkbox name=hosting value="650" onClick="this.form.total.value=checkChoice(this);">
    96. ***Техподдержка сайта 200 <input type=checkbox name=outsorce value="200" onClick="this.form.total.value=checkChoice(this);">
    97. Дополнительная сумма: <input type="text" name="total" value="" size=6 readonly><input type=hidden name=hiddentotal value=0>
    98. </pre>
    99. </td>
    100. </tr>
    101. </table>
    102. </center>
    103. <br>
    104. <p>*** Техподдержка сайта оплачивается ежемесячно.</p>
    105. <br>
    106. <p>Введите проверочный код.</p>
    107. <br>
    108. <input class="input" type="text" name="norobot" />
    109. <img src="captcha.php" />
    110. <br>
    111. <br>
    112. <input type="submit" value="Отправить заявку" />
    113. </form>
    114. </center>
    115. </div>
    116. </div>
    117. </div>
    118. </body>
    119. </html>
    и собственно обработчик

    Код (Text):
    1.  
    2. <?php
    3. session_start();
    4. if (md5($_POST['norobot']) == $_SESSION['randomnr2'])   {
    5. }   else {  
    6. echo "<p><b>Заказ не принят. Приносим свои извинения.";
    7. echo "<p><b>Попробуйте повторить отправку позже";
    8. exit;
    9. }
    10. $person = ( isset($_POST['person'] ) && strlen( $_POST['person'] ) ? $_POST['person'] : 'нет значения');
    11. $mail = ( isset($_POST['mail'] ) && strlen( $_POST['mail'] ) ? $_POST['mail'] : 'нет значения');
    12. $myshab = ( isset($_POST['myshab'] ) && strlen( $_POST['myshab'] ) ? $_POST['myshab'] : 'нет значения');
    13. $sitename = ( isset($_POST['sitename'] ) && strlen( $_POST['sitename'] ) ? $_POST['sitename'] : 'нет значения');
    14. $content = ( isset($_POST['content'] ) && strlen( $_POST['content'] ) ? $_POST['content'] : 'нет значения');
    15. $login = ( isset($_POST['login'] ) && strlen( $_POST['login'] ) ? $_POST['login'] : 'нет значения');
    16. $tmail = ( isset($_POST['tmail'] ) && strlen( $_POST['tmail'] ) ? $_POST['tmail'] : 'нет значения');
    17. $domen = ( isset($_POST['domen'] ) && strlen( $_POST['domen'] ) ? $_POST['domen'] : 'нет значения');
    18. $hosting = ( isset($_POST['hosting'] ) && strlen( $_POST['hosting'] ) ? $_POST['hosting'] : 'нет значения');
    19. $outsorce = ( isset($_POST['outsorce'] ) && strlen( $_POST['outsorce'] ) ? $_POST['outsorce'] : 'нет значения');
    20. $total = ( isset($_POST['total'] ) && strlen( $_POST['total'] ) ? $_POST['total'] : 'нет значения');
    21. $to = "mail@mail.ru";
    22. $headers = "Content-type: text/plain; charset = utf-8";
    23. $subject = "Заказ сайта за 550 рублей";
    24. $message = "Заказчик: $person \nЭлектронная почта: $mail \nШаблон сайта: $myshab \nНазвание сайта: $sitename \nКонтент сайта: $content  \nИмя сайта: $login \nДоменное имя: $tmail  \nДомен: $domen \nХостинг: $hosting \nТехподдержка: $outsorce \nДополнительная сумма: $total";
    25. $verify = mail ($to, $subject, $message, $headers,"Content-type:text/plain; charset = utf-8\r\nFrom:$email");
    26. if ($verify == 'true')
    27. {
    28. echo "<center><b>Спасибо! Ваш заказ принят в обработку.В ближайшее время с вами свяжется наш менеджер.<p><br>Вернуться <a href='http://sybermedia.ru'> на сайт компании </a></center>";
    29. }
    30. else
    31. {
    32. echo "<p><b>Заказ не принят. Приносим свои извинения.";
    33. echo "<p><b>Попробуйте повторить отправку позже";
    34. }
    35. ?>
    Добавлено спустя 12 минут 54 секунды:
    Прошу прощения за невнимательность (так увлекся обработчиком,что не исправил код в самих формах).

    Добавлено спустя 18 минут 6 секунд:
    Ganzal ,огромное вам человеческое СПАСИБО! Все заработало.А можно еще вопросик: А как вместо "нет данных" сделать проверку на заполненность поля?
     
  14. Ganzal

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

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    вообще обычно пишутся валидаторы. в примитивном случае что-то типа:
    Код (PHP):
    1. $name = ( isset( $_POST['name'] ) ? trim( $_POST['name'] ) : false );
    2. $subj = ( isset( $_POST['subj'] ) ? trim( $_POST['subj'] ) : false );
    3. $err = false;
    4.  
    5. if( ! $name || ! strlen( $name ) )
    6. {
    7.   echo 'введите имя!';
    8.   $err = true;
    9. }
    10.  
    11. if( ! $subj || ! strlen( $subj ) )
    12. {
    13.   echo 'введите тему!';
    14.   $err = true;
    15. }
    16.  
    17. if( ! $err )
    18. {
    19.  mail(.../.../.../...);
    20. } 
    в вашем случае многостраничная форма - огород. так делать нужно если клиент не поддерживает современного javascript. в остальных случаях сделайте интерактивную форму. проверяйте данные по мере ввода. ну и не забудьте проверить в обработчике - интерактивная валидация легко обходится и является скорее рюшечкой чем линией обороны.

    удачи.
     
  15. yotobo

    yotobo Новичок

    С нами с:
    19 май 2013
    Сообщения:
    13
    Симпатии:
    0
    Спасибо вам за консультацию и можно сказать урок)