Спустя 14 минут, 40 секунд (11.10.2012 - 19:08) n58oo написал(а):
<?php
if (preg_match("/[^a-z,A-Z,0-9,а-я,А-Я,\-,\_]/", $user_name))
{
echo "ошибка, недопустимые символы";
exit;
}
Спустя 10 минут, 25 секунд (11.10.2012 - 19:18) dmitriy2294 написал(а):
Благодарю!) Ещё вопросик, при использовании данной конструкции отпадает надобность использования stripslashes(), htmlspecialchars() и trim()?
Спустя 19 минут, 40 секунд (11.10.2012 - 19:38) killer8080 написал(а):
Цитата (dmitriy2294 @ 11.10.2012 - 18:53) |
Чтобы данные выглядели православно, |
А что у данных могут быть свои религиозные взгляды?
Спустя 4 минуты, 3 секунды (11.10.2012 - 19:42) dmitriy2294 написал(а):
Цитата (killer8080 @ 11.10.2012 - 19:38) | ||
А что у данных могут быть свои религиозные взгляды? |
Ты понял о чем я =)
Спустя 5 минут, 5 секунд (11.10.2012 - 19:47) Игорь_Vasinsky написал(а):
для православности разреши + тогда всё будет сразу понятно
Спустя 4 минуты, 20 секунд (11.10.2012 - 19:52) dmitriy2294 написал(а):
Цитата (Игорь_Vasinsky @ 11.10.2012 - 19:47) |
для православности разреши + тогда всё будет сразу понятно |
Тонко, тонко) Так что с теми функциями, которые я выше указал?
Спустя 3 минуты, 18 секунд (11.10.2012 - 19:55) killer8080 написал(а):
Цитата (n58oo @ 11.10.2012 - 19:08) |
if (preg_match("/[^a-z,A-Z,0-9,а-я,А-Я,\-,\_]/", $user_name)) { |
Запятые там лишние, и символ _ и дефис экранировать не надо, дефис экранируется только если находится в середине символьного класса. К тому же пропустил букву ё, перечислять отдельно сторчные и прописные буквы то же не рационально, для этого есть модификатор i.
Спустя 18 секунд (11.10.2012 - 19:55) Игорь_Vasinsky написал(а):
если ты о стрипслеше и прочем - то абсолютно не зачем, т.к. паттерн в preg_match - пропустит только то что ты указал.
Спустя 1 минута, 59 секунд (11.10.2012 - 19:57) dmitriy2294 написал(а):
Цитата (Игорь_Vasinsky @ 11.10.2012 - 19:55) |
если ты о стрипслеше и прочем - то абсолютно не зачем, т.к. паттерн в preg_match - пропустит только то что ты указал. |
Ну извиняюсь, просто учился писать регистрацию по методу Евгения Попова :D
$login = stripslashes($login);
$login = htmlspecialchars($login);
$password = stripslashes($password);
$password = htmlspecialchars($password);
$login = trim($login);
$password = trim($password);
Спустя 22 секунды (11.10.2012 - 19:58) killer8080 написал(а):
Цитата (dmitriy2294 @ 11.10.2012 - 18:53) |
Или напротив разрешить только буквы и цифры? |
регулярка будет такая
"#^[a-zа-яё\d]+$#i"
Спустя 2 минуты, 54 секунды (11.10.2012 - 20:00) dmitriy2294 написал(а):
Цитата (killer8080 @ 11.10.2012 - 19:55) | ||
Запятые там лишние, и символ _ и дефис экранировать не надо, дефис экранируется только если находится в середине символьного класса. К тому же пропустил букву ё, перечислять отдельно сторчные и прописные буквы то же не рационально, для этого есть модификатор i. |
А можно правильный паттерн в студию?
"#^[a-zа-яё\d]+$#i" не совсем подойдет, можно исправленную версию "/[^a-z,A-Z,0-9,а-я,А-Я,\-,\_]/" ?
Спустя 4 минуты, 18 секунд (11.10.2012 - 20:05) Игорь_Vasinsky написал(а):
#^[-а-яё0-9]+$#i
Спустя 53 секунды (11.10.2012 - 20:06) killer8080 написал(а):
Цитата (dmitriy2294 @ 11.10.2012 - 20:00) |
можно исправленную версию "/[^a-z,A-Z,0-9,а-я,А-Я,\-,\_]/" ? |
"#[^a-zа-яё\d_-]#iu"
модификатор u только для юникода.