За последние 24 часа нас посетили 18892 программиста и 1608 роботов. Сейчас ищут 899 программистов ...

Регистрация на сайте (логин) регулярные выражения

Тема в разделе "PHP для новичков", создана пользователем Колбася, 3 авг 2012.

  1. Колбася

    Колбася Активный пользователь

    С нами с:
    12 дек 2011
    Сообщения:
    722
    Симпатии:
    0
    Есть сайт - на нем есть регистрационный код который проверяет разрешать ли такой логин или нет
    вот -

    Код (PHP):
    1. elseif (strlen($_POST['login'])<4 || strlen($_POST['login'])>20 || !preg_match("~^[a-zA-Zа-яА-Я0-9-_]+[\s]{0,1}[a-zA-Zа-яА-Я0-9-_]*$~",$_POST['login']) || preg_match("/__/",$_POST['login']) || preg_match("/--/",$_POST['login']) || preg_match("/  /",$_POST['login']) || preg_match("/(.)\\1\\1\\1/",$_POST['login']))
    2.                     {
    3.                     $err .= "<center>Выберите другой логин!</center>";
    4.                     $stop =1;
    5.                 } 
    Возникла проблема - люди стали регистрироваться и к примеру логин - Вася
    и вот когда регистрируются форма пропускает регистрацию с пробелом если он поставлен после ника получается так Вася<пробел>
    и это получается такой логин у юзера 'Вася ' - тут пробел после ника
    Подскажите как убрать чтобы юзеры могли писать логин к примеру пробел только между 2 словами если логин состоит из 2 слов (максимум 2 слова) между ними пробел больше пробелы нигде нельзя
    как это сделать?
    Если у кого есть киньте стандартную форму по логину (регулярку) котору ща юзают при регистрации . я о коде php
    Спасибо:)
     
  2. Dmitriy A. Arteshuk

    Dmitriy A. Arteshuk Активный пользователь

    С нами с:
    19 янв 2012
    Сообщения:
    2.445
    Симпатии:
    66
    Адрес:
    Зеленоград
    $user_login = trim($_POST['login']);

    ну и дальше $_POST['login'] везде замени на $user_login