Валидация имени

Obormot

Постоялец
Регистрация
10 Янв 2012
Сообщения
88
Реакции
2
В скрипте присутсвутет валидация имени пользователя (не логин)

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

var namePattern = /^[a-zA-Z0-9_\.\s\-]{3,}$/;
 
var namePattern = /^[a-zA-Zа-яА-Я0-9_\.\s\-]{3,}$/;
Хотя если "как угодно" то валидацию можно просто убрать :)
 
  • Нравится
Реакции: mdss
Все равно не принимает русские символы, может быть такое ? :eek:
Проверял, эта валидация точно..

Ну можно и убрать, но хотя бы по длине символов оставить..
 
не принимает где? в форме, в поле ввода имени, или после отправки формы на обработку?
 
При поптыке отправки формы на обработку вылетает ошибка что некоректно заплнено поле фильм которого указан выше.
Если вводить латиницей то все ок.

Еще раз пересмотрел скрипт, только эта валидация есть, больше нигде ничего не упомянуто про проверку форм.
 
ищите валидатор не на странице с формой, а там, куда отправляется форма!
Ну или выложите скрипт на рассмотрение.... вслепую трудно определить проблему...
 
Валидатор вообще в js файле, который подключен к станице, в скрипте вообще больше валидаторов не нашел, а куда отправляется форма так и не понял.
То что я привел должен быть он!
<form method="post" class="basic" action="" id="loginForm" name="loginForm">

ПС а как подправить код что бы вообще не проверялось это поле ?
 
Чтоб не проверялось яваскриптом возможно достаточно будет убрать идентификатор из поля имени, хотя не факт... (чтоб точно сказать, нужно смотреть и код формы и код скрипта), а обрабатывается форма в том же файле, что и формирует данную форму : action="" как раз на это и указывает... имя файла смотрите в адресной строке, например хттп://your.site/login.php вот login.php и есть тот файл который нужно ковырять...
 
Вот код странице на которой расположена форма !

Код:
<!DOCTYPE html
    PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<?php
/**
*
* @package phpDC
* @version 1.1.2 $Id: user.html.php 11371 2010-11-20 11:04:54Z normanlivingston $
*
*/
 
    // no direct access
defined('IN_PHPDC')||header("Location: index.php");
 
class HTML_user_phpDC
{
 
    function displayLoginForm($username='', $key='', $token='')
    {
        global $mainframe;
 
        echo '<html><head><meta http-equiv="Content-Type" content="text/html; charset='.LANG::_('html_charset').'" /><title>'. LANG::_('login_to_your_acct') .'</title>
<link media="screen" rel="stylesheet" type="text/css" href="'. $mainframe->cfg->site_url .'themes/'.$mainframe->cfg->theme_name.'/css/style.css"  />
<script type="text/javascript" src="'. $mainframe->cfg->site_url .'js/userForm.js"></script></head>
 
<body id="page-login" onload="document.loginForm.username.focus();">
    '. getMsg() .'
    <div class="login-container">
        <div class="login-box">
            <form method="post" class="basic" action="" id="loginForm" name="loginForm">
 
                <div class="login-form">
                    <h2>'. LANG::_('login_to_your_acct') .'</h2>
                    <div class="input-box input-left"><label for="username">'. LANG::_('user_name') .':</label><br/>
                        <input type="text" class="txt" id="username" name="username" value="'. $username .'" class="required-entry input-text" style="width:200px;" /></div>
                    <div class="input-box input-right"><label for="login">'. LANG::_('password') .':</label><br />
                        <input type="password" class="txt" id="login" name="password" class="required-entry input-text" value="" style="width:200px;"/></div>
                    <div class="clear"></div>
                    <div class="form-buttons">
                        <a class="left"  href="'. PATH::_('index.php?page=forgotpassword') .'">'. LANG::_('forgot_your_password') .'?</a> '.
                        ($mainframe->cfg->allow_user_registration ? '<br /><a class="left" href="'. PATH::_('index.php?page=register') .'">'. LANG::_('register') .'</a>&nbsp;&nbsp;&nbsp;&nbsp;' : '') .'
                        <div class="right"><button type="submit" class="button" title="Login" onclick="veriform.verify(1)">'. LANG::_('login') .'</button></div>
                        <input type="hidden" name="task" value="login" />
                        <input name="form_key" type="hidden" value="'. $key .'" />
                        <input name="token" type="hidden" value="'. $token .'" />
                    </div>
                </div>
            </form>
            <div class="bottom"></div>
            <script type="text/javascript">
                var veriform = new userForm(\'loginForm\');
            </script>
        </div>
    </div>
</body>';
 
    }
 
    function displayRegistrationForm($token='')
    {
        global $mainframe;
       
        echo '<html><head><meta http-equiv="Content-Type" content="text/html; charset='.LANG::_('html_charset').'" /><title>'. LANG::_('register') .'</title>
<link media="screen" rel="stylesheet" type="text/css" href="'. $mainframe->cfg->site_url .'themes/'.$mainframe->cfg->theme_name.'/css/style.css"  />
<script type="text/javascript" src="'. $mainframe->cfg->site_url .'js/userForm.js"></script></head>
 
<body id="page-login" onload="document.registerForm.name.focus();">
    '. getMsg() .'
    <div class="login-container">
        <div class="login-box">
            <form method="post" action="" name="registerForm" id="registerForm" autocomplete="off">
                <div class="login-form">
                    <h2>'. $mainframe->cfg->site_name .' '. LANG::_('registration') .'</h2>
                    <div class="input-box input-left"><label for="name">'. LANG::_('name') .':</label><br/>
                        <input type="text"  class="txt" id="name" name="name" value="" class="required-entry input-text" style="width:130px;"/></div>
                   
                    <div class="input-box input-left"><label for="username">'. LANG::_('user_name') .':</label><br/>
                        <input type="text"  class="txt" id="username" name="username" value="" class="required-entry input-text" style="width:130px;"/></div>
                   
                    <div class="input-box input-left"><label for="email">'. LANG::_('email_address') .':</label><br/>
                        <input type="text" class="txt" id="email" name="email" value="" class="required-entry input-text" style="width:130px;"/></div>
                   
                    <div class="input-box input-left"><label for="password">'. LANG::_('password') .':</label><br />
                        <input type="password" class="txt" id="password" name="password" class="required-entry input-text" value="" style="width:130px;"/></div>
                   
                    '. ($mainframe->cfg->allow_only_buyer_or_designer ? '<div class="input-box input-left"><label for="usertype">'. LANG::_('register_me_as') .':</label><br />
                        <select name="usertype" class="required-entry select">
                            <option value="">--'. LANG::_('choose_one') .'--</option>
                            <option value="Buyer">'. LANG::_('contest_holder') .'</option>
                            <option value="Designer">'. LANG::_('Designer') .'</option>
                        </select>
                        </div>'
                        : '<input name="usertype" type="hidden" value="User" />') .'
                   
                    <div class="input-box input-left"><label for="password2">'. LANG::_('r_password') .':</label><br />
                        <input type="password"  class="txt" id="password2" name="password2" class="required-entry input-text" value="" style="width:130px;"/></div>
                   
                    <div class="clear"></div>
                    <div class="form-buttons">
                        <input type="checkbox" id="sendEmail" name="sendEmail" checked="checked" value="1" />
                        '. LANG::_('Receive_Email_notifications') .'
                          <div class="right"><input type="button" class="button" value="'. LANG::_('register') .'" title="'. LANG::_('register') .'" onclick="veriform.verify(1)" /></div>
                        <input type="hidden" name="task" value="register" />
                        <input name="tz" type="hidden" value="" />
                        <input name="token" type="hidden" value="'. $token .'" />
                    </div>
                </div>
            </form>
            <div class="bottom"></div>
            <script type="text/javascript">
                var veriform = new userForm(\'registerForm\');
            </script>
 
        </div>
    </div>
</body>';
    }
 
    function displayActivationForm()
    {
        global $mainframe;
        $session =& DC::getSession();
        $token    = $session->getToken();
 
        echo '<html><head><meta http-equiv="Content-Type" content="text/html; charset='.LANG::_('html_charset').'" /><title>'. LANG::_('activate_your_acct') .'</title>
<link media="screen" rel="stylesheet" type="text/css" href="'. $mainframe->cfg->site_url .'themes/'.$mainframe->cfg->theme_name.'/css/style.css"  />
<script type="text/javascript" src="'. $mainframe->cfg->site_url .'js/userForm.js"></script></head>
 
<body id="page-login" onload="document.activateForm.key.focus();">
    '. getMsg() .'
    <div class="login-container">
        <div class="login-box">
            <form method="get" action="" id="activateForm" name="activateForm" autocomplete="off">
 
                <div class="login-form">
                    <h2>'. LANG::_('activate_your_acct') .'</h2>
                    <div class="input-box input-left"><label for="key">'. LANG::_('activate_code') .':</label><br />
                        <input type="text" id="key" name="key" style="width:465px" class="required-entry input-text" value="" /></div>
                    <div class="clear"></div>
                    <div class="form-buttons">
                        <input type="submit" class="form-button" value="'. LANG::_('activate') .'" title="'. LANG::_('activate') .'" />
                        <input type="hidden" name="task" value="activate" />
                        <input name="'. $token .'" type="hidden" value="1" />
                    </div>
                </div>
            </form>
            <div class="bottom"></div>
            <script type="text/javascript">
                var veriform = new userForm(\'activateForm\');
            </script>
        </div>
    </div>
</body>';
 
    }
 
    function displayForgotPasswordForm()
    {
        global $mainframe;
        $session =& DC::getSession();
        $token    = $session->getToken();
 
        echo '<html><head><meta http-equiv="Content-Type" content="text/html; charset='.LANG::_('html_charset').'" /><title>'. LANG::_('reset_password') .'</title>
<link media="screen" rel="stylesheet" type="text/css" href="'. $mainframe->cfg->site_url .'themes/'.$mainframe->cfg->theme_name.'/css/style.css"  />
<script type="text/javascript" src="'. $mainframe->cfg->site_url .'js/userForm.js"></script></head>
 
<body id="page-login" onload="document.forgotPasswordForm.email.focus();">
    '. getMsg() .'
    <div class="login-container">
        <div class="login-box">
            <form method="post" action="" id="forgotPasswordForm" name="forgotPasswordForm" autocomplete="off">
 
                <div class="login-form">
                    <h2>'. LANG::_('reset_password') .'</h2>
                    <div class="input-box input-left"><label for="email">'. LANG::_('email_address') .':</label><br />
                        <input type="text" class="txt" id="email" name="email" style="width:200px" class="required-entry input-text" value="" /></div>
                    <div class="input-box input-left"><label for="username"><em>'. LANG::_('or') .'</em> '. LANG::_('user_name') .':</label><br/>
                        <input type="text" class="txt" id="username" name="username" style="width:200px;" class="required-entry input-text" value="" /></div>
                    <div class="clear"></div>
                    <div class="form-buttons"><br />
                      <div class="left"><input type="button" class="button" value="'. LANG::_('OK') .'" title="'. LANG::_('reset_password') .'" onclick="veriform.verify(1)" /></div>
                        <input type="hidden" name="task" value="forgotpassword" />
                        <input name="'. $token .'" type="hidden" value="1" />
                    </div>
                </div>
            </form>
            <div class="bottom"></div>
            <script type="text/javascript">
                var veriform = new userForm(\'forgotPasswordForm\');
            </script>
        </div>
    </div>
</body>';
 
    }
   
}
?>
На этой странице подключен userForm.js - там я и нашел строку с валидацией поля:
var namePattern = /^[a-zA-Zа-яА-я0-9_\.\s\-]{3,}$/;

Где еще может быть валидация ?
Может быть строку фильтра подправить что бы он все что угодно пропускал ? я просто в синтаксисе js не силен :(
 
выложите userForm.js а лучше весь скрипт целиком...
 
Назад
Сверху