[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: PHP ограничение на ввод в input
LionX
Необходимо чтобы в определенное поле можно было ввести только английские буквы и цифры, при чем минимальная длина для ввода - 3 символа, а максимальная 16.
На счет последнего это понятно, maxlength=16, а вот как остальное? Еще в php есть значение preg-match, только я не особо умею им пользоватся... Помогите пожайлуста.



Спустя 17 минут, 25 секунд (1.04.2011 - 09:34) Ulan написал(а):
вам сюда

Спустя 5 минут, 59 секунд (1.04.2011 - 09:40) YVSIK написал(а):
if (strlen($loginl) < 3 or strlen($loginl) > 15) 
/*---*/{/*---*/
unset($loginl);
echo '"Логин" должен состоять от 3 и до 15 символов <br >';
/*---*/}/*---*/

это по поводу длинны поля
по поводу англицких нада регуляркой
примерно так
тут правда поная регулярка на почту но
есль сократить то будет понятно
if (!preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i", $maill))
{
unset($maill);
echo 'Введите e-mail в виде <i>mail@server.com</i><br >' ;
}

где-то так
if (!preg_match("/[0-9a-z_]",$maill))

Спустя 10 минут, 4 секунды (1.04.2011 - 09:50) LionX написал(а):
Ulan
те коды которые по ссылке не рабочие.
YVSIK
за подсказку на счет длины ввода - спасибо. На счет ограничений - на email у меня есть, но мне нужно на ограничение при вводе логина. А по ссылке выше не работает.
Следующий например код некорректный:
if(!preg_match("[A-z0-9]{6,20}#",$login)){
die("Имя не корректно");}

ввожу в поле например свой ник lionx и пишет что имя не корректно...

Спустя 3 минуты, 35 секунд (1.04.2011 - 09:53) YVSIK написал(а):
а так?
f(!preg_match("/[A-z0-9]{6,20}",$login))

Спустя 1 минута, 44 секунды (1.04.2011 - 09:55) LionX написал(а):
if (!preg_match("/[0-9a-z_]",$maill))

кстати это тоже не работает, пишет дополнительно и ошибку
Warning: preg_match() [function.preg-match]: No ending delimiter '/' found in Z:\home\legendsgame.ru\www\activation.php on line 26

Спустя 4 минуты, 8 секунд (1.04.2011 - 09:59) LionX написал(а):
if(!preg_match("/[A-z0-9]{6,20}",$login))


пишет ту же ошибку что и выше.
Если поставить слеш после {6,20}, чтобы было так
if(!preg_match("/[A-z0-9]{6,20}/",$login))

то ошибка пропадает, но пишет что имя не корректно

Спустя 48 секунд (1.04.2011 - 10:00) YVSIK написал(а):
Во первых там написано что гдето так
и надобно разбираться теперь в регулярках
а не тупо переписывать код ВОТ!

вообщет-Т у твина есть НУ достаточно классно освещена эта тема
зачем так урезать пользователя?
ЭТО двА почитай

Спустя 41 минута, 36 секунд (1.04.2011 - 10:42) Ulan написал(а):
Цитата (LionX @ 1.04.2011 - 06:59)
то ошибка пропадает, но пишет что имя не корректно

еще бы, в вашем имени 5 символов, а разрешено от 6 до 20 smile.gif
но вообще эта регулярка некорректно проверяет строку, она пропустит, например русские буквы в начале слова
регулярка YVSIK проверки мыла тоже smile.gif а еще не получится зарегать мыло с домена *.info

Спустя 3 минуты, 59 секунд (1.04.2011 - 10:46) LionX написал(а):
Ulan
неа, прописал ник подлиннее, все равно не работает sad.gif

Спустя 10 минут, 36 секунд (1.04.2011 - 10:56) Ulan написал(а):
поробуйте так

<?php
$text = 'nick_name_99';

if(!preg_match('/^[a-z0-9_]{6,20}$/i',$text))
{
echo "you bad man";
}
else
{
echo "Yep!";
}

Спустя 18 минут, 44 секунды (1.04.2011 - 11:15) LionX написал(а):
Всем спасибо за помощь, разобрался.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.