Показать сообщение отдельно
  #9 (permalink)  
Старый 10.03.2009, 18:00
Профессор
Отправить личное сообщение для Dmitry A. Soshnikov Посмотреть профиль Найти все сообщения от Dmitry A. Soshnikov
 
Регистрация: 25.02.2008
Сообщений: 707

Zeboton, только стоит помнить, что проверка на клиенте - не нажёжный вариант, поскольку можно послать http-запрос и без браузера (socket'ом, например). Поэтому, на клиенте следует делать проверку, как дополнение к серверной (избежим лишних запросов для мелких проверок, а на сервере - подстрахуемся, когда уже однозначно запрос отправиться на выполнение, а не на проверку; внутри процедуры выполнения будет проверка всех полей).

Это, конечно, нарушает DRY (Don't Repeat Yourself), но, если сделать небольшую библиотеку для проверки и не акцентировать на ней особо внимание, т.е. не вызвать вручную эти проверки, а навесить их автоматом скриптом (на сабмит формы, например); сами же элемты могут иметь, например, атрибут validate="required|email", что говорит, что этот элемент обязателен для заполнения и должен еще и является правильным email'ом. Это может повысить эффективность и снизить "ненужные" запросы к серверу.

Однако, повторю, ни в коем случае нельзя доверять проверку серьёзных данных JavaScript'у, потому JS подгрузился - всё - я могу полностью заменить Вашу функцию checkEmail (через строку адреса, либо консоль):

window.checkEmail = function () { return true; };


Поэтому - на сервере проверка - обязательна.
__________________
Тонкости ECMAScript

Последний раз редактировалось Dmitry A. Soshnikov, 10.03.2009 в 18:12. Причина: дополнения
Ответить с цитированием