Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Проблема при вводе имени на русском.
 
 автор: algoritm2   (20.04.2016 в 06:08)   письмо автору
 
 

Пытаюсь реализовать регистрацию где пользователь должен помимо логина вводить еще и свое имя, допускаются английские и русские имена, а так же пробелы и нижние подчеркивание.
Вот код:

if($username=="" || !preg_match("|^[_a-zA-Z0-9а-яА-Я ]+$|", $username))
      {
          $error[] = "Имя пользователя указано неверно";
      }

Если написать на английском Alexey, то имя проходит. Если написать на русском Алексей, то выдает ошибку которая указана в error. Из своего наблюдения я обнаружил, что если просто написать Алек, то такое имя пройдет, а буквы с, р, ц, у и еще много других букв не проходит, т.е. часть букв проходит, а часть нет. В чем может быть проблема?

  Ответить  
 
 автор: algoritm2   (20.04.2016 в 07:16)   письмо автору
 
   для: algoritm2   (20.04.2016 в 06:08)
 

У меня сайт использует кодировку UTF-8, а это значить, что эта кодировка работает с символами с кодом меньше 255, а русские буквы в юникоде по крайне мере часть стоят дальше. Если способ это исправить или лучше сделать по другому, так как у меня все равно используются все буквы алфавита как английского так и русского, лучше подскажите как запретить разного рода символов например вот такие \.?,$%# и т.д.

  Ответить  
 
 автор: Trianon   (20.04.2016 в 10:40)   письмо автору
 
   для: algoritm2   (20.04.2016 в 07:16)
 

смешались в кучу кони люди...

preg_match("|...|u", ... - не?

  Ответить  
 
 автор: Spomz   (11.05.2016 в 21:31)   письмо автору
 
   для: algoritm2   (20.04.2016 в 06:08)
 

Не знаю, в каком контексте этот скрипт, но надо ещё согласовывать с локалью кодировки страниц сайта и скриптов сервера.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования