|
|
|
|
|
для: evgen_17
(03.03.2005 в 00:05)
| | Хм... а у меня этот пример нормально отрабатывает. | |
|
|
|
|
|
|
|
для: cheops
(02.03.2005 в 23:34)
| | Пмшу:
$div = "Только-указанные-символы"; $uid = "|^[-_а-яa-z0-9]+$|i"; if(!preg_match($uid, $div)) { echo "<table><tr><td><font color=red>Неверный ввод!</font><br></td></tr></table>"; $err = "yes"; }
|
$uid = Логин. Я пишу "Имя_Пользователя" в поле "Логин" А мне выдаётся сообщение "Неверный ввод!" И в поле "Логин" вставляется |^[-_а-яa-z0-9]+$|i... Что тут не так? | |
|
|
|
|
|
|
|
для: evgen_17
(02.03.2005 в 23:26)
| | Подходящее регулярное выражение описывается по теме http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=834 | |
|
|
|
|
|
|
|
для: cheops
(02.03.2005 в 23:23)
| | Значит чтобы можно было использовать русские буквы нужно что0то другое придумать? Но как это заменить? Функция то хорошо работает... | |
|
|
|
|
|
|
|
для: evgen_17
(02.03.2005 в 20:53)
| | Функция ctype_alnum() возвращает true, если строка $u содержит только цифры и буквы английского алфавита и false - если это не так. Эта функция соответствует следующему регулярному выражению
<?php
preg_match('/^[a-z0-9]*$/i', $u);
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(27.02.2005 в 23:08)
| |
<?
if (!ctype_alnum($u) || strlen($u) < 4 || strlen($u) > 10) {
echo "<font color=red>Логин должен содержать от 4 до 10 символов. (буквы и цифры)</font><br>";
$err = "yes";
}
?>
|
Разрешает вводить Логин только на английском иначе ничего в БД не заносится. Почему??? | |
|
|
|
|
|
|
|
для: Atom
(28.02.2005 в 23:55)
| | Как же я воспользуюсь константой, если то, что должно быть короче 10 и длиннее 4 символов напрямую зависит от того, что введёт пользователь? | |
|
|
|
|
|
|
|
для: evgen_17
(28.02.2005 в 23:11)
| |
<?
if (!ctype_alnum($u) || strlen($u) < 4 || strlen($u) > 10) {
echo "<font color=red>Логин должен содержать от 4 до 10 символов. (буквы и цифры)</font><br>";
$err = "yes";
}
?>
|
Мне кажется вместо переменной лучше воспользоватся константой. Так безопаснее.
Но может я ошибаюсь. | |
|
|
|
|
|
|
|
для: cheops
(28.02.2005 в 22:16)
| | С этим вроде разобрался...
Использовал
<? if (!ctype_alnum($u) || strlen($u) < 4 || strlen($u) > 10) { echo "<font color=red>Логин должен содержать от 4 до 10 символов. (буквы и цифры)</font><br>"; $err = "yes"; } ?>
|
Можно узнать как использовать регулярное выражение preg_macth? Например мне нужно чтобы можно было ипользовать русские и английские буквы верхнего и нижнего регистра, знак подчёркивания, тире и цыфры...
И кстате использование такого ограничения на ввод e-mail
<? if (!preg_match("/^[-0-9a-z_]+@[-0-9a-z_^\.]+\.[a-z]{2,3}$/i", $email)) { echo "<font color=red>Поле E-mail должно содержать запись вида mail@mail.ru"; } ?>
|
всё равно позволяет ввести код скрипта после знака ";"... как от этого защититься? | |
|
|
|
|
|
|
|
для: evgen_17
(28.02.2005 в 21:25)
| | А данный код и не ограничивает число символов - он просто берёт первые 10 из введённых - или и в базу попадает 20? | |
|
|
|
|