| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Методы проверки на правильность заполнения полей. |
| Автор: DezmASter 26.4.2007, 12:51 | ||||||||||||||||||||||
| Как вы знаете, большинство скриптов, представленных в Web, ориентированы на работу с пользователем. Но для того, чтобы её начать, нужно, как правило, заполнить форму (в Интернете они встречаются повсеместно). Наивно полагать, что искушенный юзер с первого раза выдаст правильную, а главное корректную, информацию о себе. Конечно, правильность его имени и реальность земного адреса проверить мы не сможем, но вот то, как они введены, пожалуйста. Представим, нам нужно создать программу, спрашивающую у посетителя его имя, e-mail. А также попросим придумать пароль и ввести по желанию комментарий. Если вы знакомы с HTML, то должны знать, что каждое поле в форме должно иметь имя. Итак, имена: name (Имя), mail (E-mail), password (Пароль), rpassword (Повторный пароль), comment (Комментарий). Для тех, кто ничего не понял, приведу исходный код нашей формы (кстати, его мы будем вставлять прямо в код PHP): Фрагмент form.php
Непонятная с первого взгляда строка <input type = hidden name = seenform value = yes> поможет нам узнать, заполнялась ли форма данным пользователем или ещё нет. А вот значение $form = “…” объясняется тем, что мы собираемся интегрировать форму напрямую с PHP. Теперь, когда готова основа, можем начинать её наполнение. Вспомним про поле с именем “seenform”. Итак, вот зачем оно было нужно:
Если значение формы не равно ‘yes’, отобразить форму. В обратном случае работает код, следующий за словлм else. Форма заполнена, можно начинать проверку. Но для начала условимся, что 1. Кол-во символов в поле «Имя» и «E-mail» не больше, чем 40; 2. Кол-во символов в поле «Пароль» не меньше, чем 3; 3. Кол-во символов в поле «Комментарий» не больше, чем 450; 4. «Пароль» должен состоять только из латинских букв или цифр; 5. Все поля, кроме «Комментарий» должны быть заполнены! Проверка на заполнение полей:
Переменная $er = 1 значит, что была ошибка. В конце проверки мы это учтём. Проверка на длину введенного имени:
Проверка на длину введенного E-mail’a:
Проверка на длину введенного пароля:
Проверка на длину введенного комментария:
Проверка на корректность введенного E-mail’a:
Проверка на корректность введенного пароля:
Проверка на соответствие первого и второго пароля:
Вот вроде бы и всё, проверка окончена. Теперь вспомним о $er = 1; Если ошибок встречено не было, то и переменная $er никогда не будет иметь значение. Так,
То, что мы написали, является обязательным моментом при создании гостевых книг и прочих формосодержащих вещей. В принципе, можете вносить свои изменения или ещё чего. Но главное, если Вы чего-то не знаете, то всегда можно посмотреть ЭТО у других. Плагиат хоть никто и не любит, но запретить никто не может! Философия ---- - the end – Автор: ademan aka Михаил Хорошун E-mail автора: [email protected] Сайт автора: http://parker.port5.com |