Есть скрипт обратной связи: имя, почта и телефон. Скрипт рабочий,- заполняется форма, отправляется на нужный e-mail, но я хочу добавить в него новое поле,- допустим "текст сообщения" - пробовала несколько вариаций, но ничего не меняется ((( Буду признательна если поможете разобраться чайнику))) ниже выкладываю рабочий код: HTML: Код (Text): <form method="post" action="index1.php" name="form1" onsubmit="return validate_form1 ( );"> <input type="text" class="form" name="name" placeholder="ИМЯ"><br> <input type="text" class="form" name="adress" placeholder="E-MAIL"><br> <input type="text" class="form" name="phone" placeholder="ТЕЛЕФОН"><br> <input type="submit" class="submit" name="submit" value="Заказать"> PHP: Код (Text): <?php /* Здесь проверяется существование переменных */ if (isset($_POST['phone'])) {$phone = $_POST['phone'];} if (isset($_POST['name'])) {$name = $_POST['name'];} if (isset($_POST['adress'])) {$adress = $_POST['adress'];} /* Сюда впишите свою эл. почту */ $address = "vikaivanova19@ya.ru"; /* А здесь прописывается текст сообщения, \n - перенос строки */ $mes = "Тема: Заказ обратного звонка!\nТелефон: $phone\nИмя: $name\nE-mail: $adress"; /* А эта функция как раз занимается отправкой письма на указанный вами email */ $sub='Заказ с сайта'; //сабж $email='<yourdomen.ru>'; // от кого $send = mail ($address,$sub,$mes,"Content-type:text/plain; charset = utf-8\r\nFrom:$email"); ini_set('short_open_tag', 'On'); header('Refresh: 3; URL=адрес возврата'); ?>
Что пробовали? Сделать, то что вы просите - раз плюнуть, но лучше же научить вас. Покажите неудачные попытки
я и сама хочу получить не просто решение,- с чего то надо начинать... добавила новое поле ввода в html файле: повторила Код (Text): <input type="text" class="form" name="phone" placeholder="ТЕЛЕФОН"><br> потом повторила в файле php: Код (Text): if (isset($_POST['phone'])) {$phone = $_POST['phone'];} но в письме на электронку приходят прежние значения,- ничего нового не добавляется...
Код (Text): /* А здесь прописывается текст сообщения, \n - перенос строки */ $mes = "Тема: Заказ обратного звонка!\nТелефон: $phone\nИмя: $name\nE-mail: $adress"; должон
Дам совет в HTML в качестве значений id и name не использовать такие слова как: name, id, value, phone, adress, mail. Не знаю в чем там косяк, помню у меня был скрипт, форма отправки, и он не работал, там было name="value", я пару часов над ним колдовал и все закончилось тем, что я изменил это name на что то другое и тут же все чудом заработало.
Погодите. Покажите весь код, пожалуйста ) Т.е. у вас два поля с name="phone" теперь, что-ли? И вы удивляетесь, что не работает?
короче ничего не понимаю, но кое-что начинает наклевываться - появилось новое значение, но в приходящем письме оно пустое...
RFC по почте читать никто не любит Как-то так: <input type="text" class="form" name="somename1" > $mes = "Тема: Заказ обратного звонка!\nТелефон: $phone\nИмя: $name\nE-mail: $adress\n $somename1"; Вообще зарезервированные переменные и константы никто не отменял.
HTML Код (Text): <html> <!-- Mirrored from lorameb.su/ by HTTrack Website Copier/3.x [XR&CO'2013], Mon, 16 Dec 2013 20:40:32 GMT --> <!-- Added by HTTrack --><meta http-equiv="content-type" content="text/html;charset=UTF-8" /><!-- /Added by HTTrack --> <head> <title>Офисная Мебель</title> <link rel="stylesheet" href="style.css"> <script src="../cdnjs.cloudflare.com/ajax/libs/prefixfree/1.0.7/prefixfree.min.js"></script> <script type="text/javascript"> <!-- function validate_form1 ( ) { valid = true; if ( document.form1.name.value == "" ) { alert ( "Пожалуйста заполните поле 'Имя'." ); valid = false; } if ( document.form1.mail.value == "" ) { alert ( "Пожалуйста заполните поле 'e-mail'." ); valid = false; } if ( document.form1.phone.value == "" ) { alert ( "Пожалуйста заполните поле 'Телефон'." ); valid = false; } return valid; } //--> </script> </head> <body> <!-- Yandex.Metrika counter --> <script type="text/javascript"> (function (d, w, c) { (w[c] = w[c] || []).push(function() { try { w.yaCounter22426003 = new Ya.Metrika({id:22426003, webvisor:true, clickmap:true, trackLinks:true, accurateTrackBounce:true}); } catch(e) { } }); var n = d.getElementsByTagName("script")[0], s = d.createElement("script"), f = function () { n.parentNode.insertBefore(s, n); }; s.type = "text/javascript"; s.async = true; s.src = (d.location.protocol == "https:" ? "https:" : "http:") + "//mc.yandex.ru/metrika/watch.js"; if (w.opera == "[object Opera]") { d.addEventListener("DOMContentLoaded", f, false); } else { f(); } })(document, window, "yandex_metrika_callbacks"); </script> <noscript><div><img src="http://mc.yandex.ru/watch/22426003" style="position:absolute; left:-9999px;" alt="" /></div></noscript> <!-- /Yandex.Metrika counter --> <div class="head"> <a href="#zvonok" class="zvonok">Заказать обратный звонок</a> </div> <div class="wall n3"> <div class="center"> <div class="form-con"> <h4>ОСТАВЬТЕ ЗАЯВКУ</h4> <h5>И получи <span>скидку 15%</span></h5> <form method="post" action="index1.php" name="form1" onsubmit="return validate_form1 ( );"> <input type="text" class="form" name="name" placeholder="ИМЯ"><br> <input type="text" class="form" name="adress" placeholder="E-MAIL"><br> <input type="text" class="form" name="phone" placeholder="ТЕЛЕФОН"><br> <input type="submit" class="submit" name="submit" value="Заказать"> </form> <h6>Согласен с использованием моих персональных данных</h6> </div> </div> </div> <a href="#x" class="overlay" id="zvonok"></a> <div class="popup" id="zvonok-inner"> <h4>Заказ звонка</h4> <h5>Оставьте свои данные и мы свяжемся с Вами в ближайшее время!</h5> <form method="POST" action="index1.php" name="zvon" onsubmit="return validate_zvon ( );"> <input type="text" class="form" name="name" placeholder="ИМЯ"><br> <input type="text" class="form" name="phone" placeholder="ТЕЛЕФОН"><br> <input type="submit" class="zvonok" name="submit" value="Заказать звонок"> </form> </div> </body> </html> PHP Код (PHP): <?php /* Здесь проверяется существование переменных */ if (isset($_POST['phone'])) {$phone = $_POST['phone'];} if (isset($_POST['name'])) {$name = $_POST['name'];} if (isset($_POST['adress'])) {$adress = $_POST['adress'];} /* Сюда впишите свою эл. почту */ $address = "vikaivanova19@ya.ru"; /* А здесь прописывается текст сообщения, \n - перенос строки */ $mes = "Тема: Заказ обратного звонка!\nТелефон: $phone\nИмя: $name\nE-mail: $adress"; /* А эта функция как раз занимается отправкой письма на указанный вами email */ $sub='Заказ с сайта'; //сабж $email='<yourdomen.ru>'; // от кого $send = mail ($address,$sub,$mes,"Content-type:text/plain; charset = utf-8\r\nFrom:$email"); ini_set('short_open_tag', 'On'); header('Refresh: 3; URL=адрес возврата'); ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta http-equiv="refresh" content="3; url=index.html"> <title>С вами свяжутся</title> <meta name="generator"> <style type="text/css"> body { background: #22BFF7 url(img/zakaz.jpg) top -70% center no-repeat; } </style> <script type="text/javascript"> setTimeout('location.replace("/index.html")', 3000); /*Изменить текущий адрес страницы через 3 секунды (3000 миллисекунд)*/ </script> </head> <body>lwgkelk2t3egkln </body> </html>
у вас тут три поля: name, adress и phone. а тут тоже три поля с такими же именами. и тут три переменных оттуда. У вас всё правильно. =)
Первый вопрос - глупый: А вы ту форму отправляете? У вас две разных формы на один скрипт отправляются. Первая выглядит рабочей по идее