Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

03.03.2008, 09:24
|
|
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
Провел на форуме: 2209675
Репутация:
537
|
|
вопрос по этому коду:
PHP код:
var iChars = "!@#$%^&*()+=-[]\\\';,./{}|\":<>?";
for (var i = 0; i < document.formname.fieldname.value.length; i++) {
if (iChars.indexOf(document.formname.fieldname.value. charAt(i)) != -1) {
alert ("Your username has special characters. \nThese are not allowed.\n Please remove them and try again.");
return false;
}
}
можно ли исключить оттуда символы вообще все символы кроме латиницы и цифр?
я подозреваю, что для этого надо юзать регулярные выражения, но никогда их не использовал в js.
может кто-нить показать хотя бы пример? а регулярку я сам напишу.
|
|
|

03.03.2008, 09:28
|
|
Banned
Регистрация: 06.06.2006
Сообщений: 944
Провел на форуме: 3986705
Репутация:
1403
|
|
Код:
<script>
var iChars = "!@#$%^&*()+=-[]\\\';,./{}|\":<>?";
if (/\W/.test(iChars)) {
alert ("Your username has special characters. \nThese are not allowed.\n Please remove them and try again.");
}
</script>
Вот код кот. заменит:
Код:
<script>
var iChars = "b(@)u*@{lko'\-_p!c@h#$%e^&l*()k+=-[o]\\\';,./{}|\":<>?";
if (/\W/.test(iChars)) {
document.write(iChars.replace(/\W/g,''));
}
</script>
</script>
Последний раз редактировалось bul.666; 03.03.2008 в 09:39..
|
|
|

03.03.2008, 09:34
|
|
Moderator - Level 7
Регистрация: 16.02.2008
Сообщений: 580
Провел на форуме: 1595333
Репутация:
291
|
|
http://www.pcre.ru/docs/javascript/text/intro1/
Регулярные выражения представляют собой образцы для поиска заданных комбинаций символов в текстовых строках (такой поиск называется сопоставлением с образцом). Существует два способа присваивания переменным регулярных выражений, а именно:
* Использование инициализатора объекта: var re = /pattern/switch?.
* Использование конструктора RegExp: var re = new RegExp("pattern"[,"switch"]?).
Здесь pattern - регулярное выражение, а switch - необязательные опции поиска.
http://javascript.ru/code/basic/regular-expression
RegExp
Объект типа RegExp, или, короче, регулярное выражение, можно создать двумя путями
1. /pattern/флаги
2. new RegExp("pattern"[, флаги])
|
|
|

03.03.2008, 10:06
|
|
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
Провел на форуме: 2209675
Репутация:
537
|
|
2 Bul.666
эмм, чет вроде не то.
у меня задача - проверить введённый пользователем логин, и если там есть что-нить кроме латинских букв и цифр - выдать алерт.
а у тебя replace.
Что такое /\W/ ?
|
|
|

03.03.2008, 10:30
|
|
Познавший АНТИЧАТ
Регистрация: 27.04.2007
Сообщений: 1,044
Провел на форуме: 3660186
Репутация:
905
|
|
можно ли исключить оттуда символы вообще все символы кроме латиницы и цифр?
Дикс, чем код була не нравится? Как раз то, что нужно - вырезает все символы которые не являются латинскими символами и цифрами (и подчеркиванием)
\W
Соответствует любому символу, кроме латинской буквы, цифры или подчеркивания. Эквивалентно /[^A-Za-z0-9_] /.
|
|
|

03.03.2008, 10:41
|
|
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
Провел на форуме: 2209675
Репутация:
537
|
|
т.е. мне сначала вырезать, а затем сравнить с исходной строкой?
попробую, но нельзя разве просто поискать в строке эти символы?
|
|
|

03.03.2008, 10:47
|
|
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
Провел на форуме: 2209675
Репутация:
537
|
|
блин, как об стену горох!
убей, не пойму, как это использовать:
var iChars = "b(@)u*@{lko'\-_p!c@h#$%e^&l*()k+=-[o]\\\';,./{}|\":<>?";
if (/\W/.test(iChars)) {
document.write(iChars.replace(/\W/g,''));
}
вот есть у меня login.value - к примеру строка "login123вася"
мне надо посмотреть - если в строке есть всякая шняга типа "вася", то васю паслать на***
Как мне применить регулярку к строке и получить вменяемый результат (желательно булевый)?
Теории куча, практики 0
|
|
|

03.03.2008, 10:49
|
|
Познавший АНТИЧАТ
Регистрация: 27.04.2007
Сообщений: 1,044
Провел на форуме: 3660186
Репутация:
905
|
|
Код:
<script>
var iChars = document.form1.login.value;
if (/\W/.test(iChars)) { // если в логине найдены запрещенные символы
alert ("Your username has special characters. \nThese are not allowed.\n Please remove them and try again."); // Вася, пшелнах
}
</script>
|
|
|

03.03.2008, 10:55
|
|
Banned
Регистрация: 06.06.2006
Сообщений: 944
Провел на форуме: 3986705
Репутация:
1403
|
|
2krypt3r && Дикс
Читайте мой пост там написано, когда при наличие Алерт (Первый код) и когда вырезать (Второй)
|
|
|

10.03.2008, 17:32
|
|
Участник форума
Регистрация: 07.01.2008
Сообщений: 109
Провел на форуме: 214923
Репутация:
17
|
|
Здравствуйте!
Как с помощью Ajax передать несколько переменных методом Post ?
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|