Запрет ввода русских символов

Тема в разделе "PHP", создана пользователем lordBlack, 4 дек 2008.

Статус темы:
Закрыта.
Модераторы: latteo
  1. lordBlack

    lordBlack

    Регистр.:
    29 ноя 2007
    Сообщения:
    620
    Симпатии:
    246
    как выставить запрет ввода русских символов в поле "Логин" и "пассворд" ?

    поковырялся не смог найти решение... по сути только две формы нужно запрет на ввод сделать а бъюсь уже день...

    скажем заполнил -нажал зарегитсья - а тут бац -окошко -"ты мол такой-сякой русские символы убери из логина и пароля !!!"
    вот...
     
  2. Piflit

    Piflit Создатель

    Регистр.:
    7 июн 2008
    Сообщения:
    24
    Симпатии:
    4
    это делается на js (опционально). в любом случае, проверяй регуляркой, есть ли в тексте кириллица. что именно не понятно?
     
  3. myweb

    myweb Среда обитания WEB

    Регистр.:
    10 сен 2007
    Сообщения:
    539
    Симпатии:
    246
    PHP:
    <script type="text/javascript">
    function 
    setValidator(idregex) {
      var 
    element document.getElementById(id);
      if (
    element) {
        var 
    lastValue element.value;
        if (!
    regex.test(lastValue))
          
    lastValue '';
        
    setInterval(function() {
          var 
    value element.value;
          if (
    value != lastValue) {
            if (
    regex.test(value))
              
    lastValue value;
            else
              
    element.value lastValue;
          }
        }, 
    10);
      }
    </script>





    <input type="text" id="test" />
    <script type="text/javascript"> setValidator('test', /^[a-zA-Z_]*$/); </script>




    Добавлено через 5 минут
    PHP:

    inputName
    .onKeyPress = function(e){
        var 
    result false
        
    if(/[a-zA-Z_]*$/.test(String.fromCharCode(e.charCode e.charCode e.keyCode))){result true}
        return 
    result;
    }

    + нужно позаботиться об копипаст.
     
    lordBlack нравится это.
  4. Mr.Emm

    Mr.Emm Постоялец

    Регистр.:
    5 май 2008
    Сообщения:
    147
    Симпатии:
    110
    Яваскрипт не надежен, потому лучше обезопаситься еще и php:

    PHP:
    <?php
    function alphastr($str){
        return(
    preg_replace('/[^a-zA-Z0-9_\-]/'''$str));
        }

    $error_string = (alphastr($password) != $password) ? '<li>Ошибка! В пароле присутствуют недопустимые знаки.</li>' '';
    $error_string .= (alphastr($login) != $login) ? '<li>Ошибка! В логине присутствуют недопустимые знаки.</li>' '';

    if(!empty(
    $error_string)){

    die(
    $error_string);

    } else {

    // код если нет ошибок...

    }
    ?>
    а чтобы выглядело все просто и красиво, можно заюзать аякс, и возвращать проверку в модальном окне.
     
    lordBlack нравится это.
Статус темы:
Закрыта.