1) Как определить кол-во символов в слове, которая содержит переменная? Нужно для того, чтобы проверить, если юзер ввел в форму символов меньше/больше числа N/M, то
CODE:echo "Логин/пароль не может быть короче/длиннее N/M символов";
Интересуют именно два варианта: больше и меньше, чтобы кол-во символов было лимитировано.
2) Интересует еще такой вопрос. Как проверить, что в введенных пользователем данных не содержится не допустимых символов, а есть только допустимые, а именно a-z, A-Z, 0, 1-9, -, _ Это вроде можно реализовать с помощью функций preg_match и/или preg_replace, но как их использовать в операторе if и как составлять список допустимых символов не понятно. Например, конструкция
CODE:if (($pass=preg_replace("/[^a-z]{10}/i","",$pass)) or ($login=preg_replace("/[^a-z]{10}/i","",$login)) or ($email=preg_replace("/[^a-z]{10}/i","",$email)))
{
echo "В введенных данных содержатся недопустимые символы";
exit;
}
не работает. Зато по отдельности:
CODE:$pass = preg_replace("/[^a-z]{10}/i","",$pass);
$login = preg_replace("/[^a-z]{10}/i","",$login);
$email = preg_replace("/[^a-z]{10}/i","",$email);
работает, но выводит ошибку PHP, а хотелось бы вывести ошибку через
чтобы юзер мог прочесть и понять, что ввел не то, что нужно.(Отредактировано автором: 09 Февраля, 2007 - 12:42:00) |