АНКЕТА на сайте
Привет всем.
Ситуация: Сайт. На нём анкета для заполнения посетителями. Данные анкеты отправляются мне на почту с помощью .php скрипта. В анкете есть 3 поля обязательные для заполнения: Имя, Фамилия, е-майл. www.StasFetisov.ru/mail.html Я написал функцию на Java Script, которая проверяет есть ли данные в этих полях, если нет, то фон поля ввода данных становится красным. Анкета (input"ы типа text) и кнопка типа submit находятся в форме: <form name="form1" method="get" action="mail.php" id="form1" enctype="text/utf-8"> ..... </form> Как планировалось: По нажатию кнопки отправить (сейчас установлена submit): срабатывает JS, который проверяет заполнены ли нужные поля. Если нет - выделяет их красным. Если всё необходимое заполнено, то срабатывает php скрипт, отвечающий за отправку содержимого анкеты мне на почту. Как сейчас сделано: Кнопка submit выпоняет свою функцию: вызов php скрипта. Отправка данных не выполняется, только если первые 6 полей пусты. Если основные поля (имя, фамилия, почта) не заполнены, то, они будут подсвечены красным, когда посетитель кликнет на дополнительные поля ввода (7-10 строки). Возможные пути решения: 1) Написать функцию, которая сначала вызовет функцию проверки ввода данных, и далее вызовет php скрипт. Как с помощью Java Script вызвать php скрипт? 2) Как остановить выполнение php скрипта (типа exit в паскале). Пробыал die() и exit() - выполняется переадресация на новую страницу. А мне важно, чтобы данные которые уже были введены так и остались в форме анкеты 3) создавать файл на серваке. Выполнять занова переход на страницу с анкетой, заполнять её данными из файла + выделять красным пустые input"ы типа text. Помогите с этим разобраться: Я не имею представления о том как выполнить любой из вышеописанных алгоритмов на JS :) Если вы можете предложить более вразумительный вариант, пожалуйста, подскажите, как лучше. Заранее спасибо. |
у меня рисуется такая картинка в мозгу:
В <form name="form1" method="get" action="mail.php", вместо mail.php вставить функцию, которая: 1) выполняет проверку, введены ли нужные данные 2) Если Нет - изменить цвет необходимых полей на красный 3) если да задействовать mail.php. ВОПРОС Как реализовать шаг 3? Запустить php из функции JS |
:stop: нет )))
Все делается так <form name="form1" id="form1" method="get" action="mail.php" onsubmit="return checkForm();"> а в js так function checkForm() { var res = true; var form = document.getElementById('form1'); if(form.email.value == '') { // email это <input type='text' name='email'> res = false; form.email.style.backgroundColor = '#ff0000'; } return res; } конечно это все в краткости и топорным способом, но написал специально так, что бы было понятно как все работает |
HelpeR, Большущее спасибо!!
Теперь всё работает так, как я планировал!! |
Часовой пояс GMT +3, время: 00:35. |