Спустя 4 минуты, 11 секунд (6.05.2010 - 17:59) DedMorozzz написал(а):
#[1-9a-Z]{1,max}#
Спустя 3 минуты, 48 секунд (6.05.2010 - 18:03) WebClass написал(а):
И как этим пользоваться?
Спустя 1 минута, 39 секунд (6.05.2010 - 18:05) twin написал(а):
Ух я сегодня матерился, когда мне отказали в русском логине на одном сайте.
Для чего это интересно такие неприятности юзерам делать?
Для чего это интересно такие неприятности юзерам делать?
Спустя 1 минута, 41 секунда (6.05.2010 - 18:07) WebClass написал(а):
Из-за кодировки...
Спустя 2 минуты, 7 секунд (6.05.2010 - 18:09) DedMorozzz написал(а):
вставь в свою проверку. Регулярку дал. Макс замени на максимальное кол-во вимволов, да и 1 лучше поменяй на более приемлимое (в фигурных скобках минимальное и максимальное значение длины логина)
Спустя 4 минуты, 49 секунд (6.05.2010 - 18:13) WebClass написал(а):
А как его туда вставить, если делать с условием if - else
Спустя 2 минуты, 35 секунд (6.05.2010 - 18:16) twin написал(а):
WebClass
Цитата |
Из-за кодировки... |
а что кодировка?
Спустя 2 минуты, 13 секунд (6.05.2010 - 18:18) DedMorozzz написал(а):
<?php
if (preg_match("#^[1-9A-z]+$#",$_POST['aaa'])) {
echo "good";
}
else {
"Ирор";
}
?>
<form action="test.php" method="post">
<input type="text"name="aaa"/>
<input type="submit"/>
</form>
ЗЫ: Замени + на интервал в фигурных скобках. Указав минимальную и максимальную длину
Спустя 3 минуты, 50 секунд (6.05.2010 - 18:22) WebClass написал(а):
Цитата (twin @ 6.05.2010 - 15:16) | ||
WebClass
а что кодировка? |
Когда по русски логин пишешь, то вместо русского логина появляются иероглифы
Цитата |
<?php if (preg_match("#[A-z]+#",$_POST['aaa'])) { echo "good"; } else { "Ирор"; } ?> <form action="test.php" method="post"> <input type="text"name="aaa"/> <input type="submit"/> </form> |
Спасибо большое!
Спустя 1 минута, 22 секунды (6.05.2010 - 18:23) DedMorozzz написал(а):
заметь, я чуток подправил регулярку. добавь начало и конец. Вобщем скопипасти то, что сейчас.
Спустя 7 минут, 4 секунды (6.05.2010 - 18:31) FatCat написал(а):
Цитата (twin @ 6.05.2010 - 19:05) |
Ух я сегодня матерился, когда мне отказали в русском логине на одном сайте. Для чего это интересно такие неприятности юзерам делать? |
А я уже пол-года матерюсь, что в форуме разрешены нелатинские символы.
На самом деле уже лет 5 матерюсь, но тихо, а пол-года громко.
Придумал очень красивый способ давать юзерам поддомены вида http://user.domen.ru/ и ломаю голову, что делать с кирилическими никами. Скрипту-то до пилы что в адресной строке, хоть китайский-упрощенный; а вот апач не хочет...
А по мелочи матерюсь...
FatCat, FаtCat, FatCаt, FatСаt, FatCat и FаtСat - сколько из шести тут одинаковы?
Ни одного, все разные. И все шесть - не мой ник.
Выделю кириллицу жирным: FаtCаt, FаtCat, FatCаt, FatСаt, FatCat и FаtСat.
Я на одном из форумов так подколол админа, правда в первом же посте подробно написал, что это шутка: зарегил фейк его ника с подменой одной буквы кириллицей, поставл ту же аватарку... Конечно дата регистрации и количество постов отличались, но с первого взгляда никто не замечал, что перед ним фейк.
Спустя 5 минут, 1 секунда (6.05.2010 - 18:36) WebClass написал(а):
DedMorozzz
сделал так:
и ничего не выводит , а вот если пробел убрать вывидет good и если $a="тест";
тоже ничего не выводит, как бы исправить?
сделал так:
<?php
$a="2 qwe";
if (preg_match("#^[1-9A-z]{1,20}$#",$a)) {
echo "good";
}
else {
"Ирор";
}
?>
и ничего не выводит , а вот если пробел убрать вывидет good и если $a="тест";
тоже ничего не выводит, как бы исправить?
Спустя 3 минуты, 14 секунд (6.05.2010 - 18:39) DedMorozzz написал(а):
ммм...а что ты хочешь что бы выводило? "Ирор"? Ну это веть твой скрипт - добавь ечо. Я на скорую руку писал. Под себя подстрой. Т.е. "echo 'тут твой текст ошибки';"
Спустя 31 секунда (6.05.2010 - 18:39) WebClass написал(а):
ой не заметил что нет echo
но если так написать $a="2 qwe"; то все равно пишет ирор хотя должен good
пробелы запрещены почему-то...
но если так написать $a="2 qwe"; то все равно пишет ирор хотя должен good
пробелы запрещены почему-то...
Спустя 53 секунды (6.05.2010 - 18:40) DedMorozzz написал(а):
не должен "гуд писать". Пробел стоит. Прочти что ты написал. Только латиница и цыфры. Пробела там нету
Спустя 1 минута, 39 секунд (6.05.2010 - 18:42) DedMorozzz написал(а):
если хочешь с пробелом, тогда добавь его, по типу вот так: #^[1-9A-z ]{1,20}$#
Но учти, тогда надо будет иль запретить 1м символом пробел, иль делать ф-ю трим и после проверять длину.
Но учти, тогда надо будет иль запретить 1м символом пробел, иль делать ф-ю трим и после проверять длину.
Спустя 4 минуты, 26 секунд (6.05.2010 - 18:46) WebClass написал(а):
А ну и хорошо, что пробелы нельзя
Спасибо за скрипт!
Спасибо за скрипт!
Спустя 3 часа, 2 минуты, 25 секунд (6.05.2010 - 21:49) twin написал(а):
FatCat
Цитата |
А я уже пол-года матерюсь, что в форуме разрешены нелатинские символы. На самом деле уже лет 5 матерюсь, но тихо, а пол-года громко. Придумал очень красивый способ давать юзерам поддомены вида http://user.domen.ru/ и ломаю голову, что делать с кирилическими никами. Скрипту-то до пилы что в адресной строке, хоть китайский-упрощенный; а вот апач не хочет... А по мелочи матерюсь... FatCat, FаtCat, FatCаt, FatСаt, FatCat и FаtСat - сколько из шести тут одинаковы? Ни одного, все разные. И все шесть - не мой ник. Выделю кириллицу жирным: FаtCаt, FаtCat, FatCаt, FatСаt, FatCat и FаtСat. Я на одном из форумов так подколол админа, правда в первом же посте подробно написал, что это шутка: зарегил фейк его ника с подменой одной буквы кириллицей, поставл ту же аватарку... Конечно дата регистрации и количество постов отличались, но с первого взгляда никто не замечал, что перед ним фейк. |
Латинизация ников - самое простое, но от того и самое бестолковое решение проблемы. Во первых уменьшается диапазон, во вторых - это на самом деле неудобно.
А все, что ты перечислил, решить можно. И не очень то сложно на самом деле. Мы тут уже не раз обсуждали.
Для поддоменов - транслитерация. Проверка уникальности по обоим вариантам, если по первому уникален, а по транслиту нет, добавляем случайный символ или номер и рекурсивно подбираем уникум.
По второму, очень просто можно запретить использовать латиницу и кирилицу вместе, только что то одно. Тогда не будет фейков.
Вообще все вопросы можно решить цивилизованно. Меня в дрожь бросает, если вижу, что чего то нельзя при регистрации. Значит человек затыкал дыры, а не решал проблемы. А значит и на сайте у него не все наверное гладко.
PS Вот как и этот парень. Он борется не с причиной, а со следствием. Вместо того, чтобы разобраться с кодировками, затыкает дыру принудительной латинизацией. И не понимает, что кодировка все равно кривая его вылезет потом. Не тут, так в другом месте.
Спустя 2 часа, 23 минуты, 28 секунд (7.05.2010 - 00:12) FatCat написал(а):
Цитата (twin @ 6.05.2010 - 22:49) |
Вообще все вопросы можно решить цивилизованно. |
Цитата (twin @ 6.05.2010 - 22:49) |
можно запретить использовать латиницу и кирилицу вместе |
Не стал запрещать, сделал проверку на совместное использование разных кодировок и раскраску разными цветами только при смешивании. Бьет по глазам, клоны не пройдут.
Цитата (twin @ 6.05.2010 - 22:49) |
Для поддоменов - транслитерация |
Транслитерация нередко дает "нечеловеческие" имена; сие неприятно.
Думаю, сделаю проще: возможность пользователю самому выбирать себе второе имя для поддомена.
Спустя 3 минуты, 48 секунд (7.05.2010 - 00:16) FаtCаt написал(а):
Проверю, вроде в этом движке тоже сделана раскраска при смеси кодировок.
Спустя 45 секунд (7.05.2010 - 00:17) FatCat написал(а):
Вот, можно по нику увидеть: кириллица позеленела.
Спустя 6 часов, 45 минут, 43 секунды (7.05.2010 - 07:02) WebClass написал(а):
Цитата |
PS Вот как и этот парень. Он борется не с причиной, а со следствием. Вместо того, чтобы разобраться с кодировками, затыкает дыру принудительной латинизацией. И не понимает, что кодировка все равно кривая его вылезет потом. Не тут, так в другом месте. |
Вот тут я не соглашусь. Если все по латински будет, с кодировкой проблем нет.
Спустя 10 минут, 59 секунд (7.05.2010 - 07:13) twin написал(а):
А посты писать народ тоже латиницей будет? Ведь если есть проблема с кодировками, решать надо её. Рано или поздно этот косяк проявится.
Если все настроено правильно, никаких проблем в принципе возникнуть не может. Соответственно и думать как исправить ситуацию с кракозяблами станет не нужно.
Лучше бы вот поизучал.
Если все настроено правильно, никаких проблем в принципе возникнуть не может. Соответственно и думать как исправить ситуацию с кракозяблами станет не нужно.
Лучше бы вот поизучал.