Внедрение регулярки в форму

Тема в разделе "Регулярные выражения", создана пользователем BuzzDD, 13 мар 2009.

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

    BuzzDD Постоялец

    Регистр.:
    9 фев 2009
    Сообщения:
    76
    Симпатии:
    5
    Ребят, есть форма:
    HTML:
    <p><label>Имя:</label><input name='author' type='text' size='20' maxlength='30'></p>
    <p><label>E-mail:</label><input name='emeil' type='text' size='20' maxlength='30'></p>
    <p><label>ICQ:</label><input name='ICQ' value="отсутствует" type='text' size='20' maxlength='30' style="color:#999999;"></p>
    Как в неё засунуть регулярные выражения? То есть, мне нужно сделать проверку имейла и ICQ, а имя я уже сам знаю регулярное выражение,но не знаю как внедрить сам код туда.
    Или что можете предложить лучшее?

    p.s.: если не совсем в тот раздел, извините)
     
  2. Murdok

    Murdok

    Регистр.:
    1 окт 2006
    Сообщения:
    236
    Симпатии:
    84
    Вот пример, надеюсь поможет
    PHP:
    <?php
    if ($login=="" OR $email=="" OR $pass==""){
    print 
    "Заполните все необходимые поля!<BR>";
    $er 1;     
    }
    if (
    strlen($login) > 40)
    {
    print 
    "Имя не должно быть длиннее, чем 40 символов!<BR>";
    $er 1;
    }
    if (
    strlen($email) > 40)
    {
    print 
    "E-mail не должен быть длиннее, чем 40 символов!<BR>";
    $er 1;
    }
    if (
    strlen($pass) < 3)
    {
    print 
    "Пароль не должен быть короче, чем 3 символа!<BR>";
    $er 1;
    }
    if (!
    eregi("^([0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\.[a-wyz][a-z](fo|g|l|m|mes|o|op|pa|ro|seum|t|u|v|z)?)$"$email) and $email != "")
    {
    print 
    "Вы ввели некорректный e-mail адрес!<BR>";
    $er 1;
    }
    if (!
    eregi("^([A-Za-z0-9А])"$pass) and $pass != "")
    {
    print 
    "Имя должно состоять из латинский букв и/или цифр!<BR>";
    $er 1;
    }
    if (
    $er == 1){
    die; 
    }
    if (
    $er == ""){ // нет значения переменной
    print "";
    }
    ?>
     
  3. zerdek

    zerdek

    Регистр.:
    29 ноя 2007
    Сообщения:
    346
    Симпатии:
    50
    пример регулярки на ява-скрипе

    Код:
    <script type="text/javascript">
    function isEmailCorrect(formname, fieldname) { 
    	var re = /^\w+([\.-]?\w+)*@(((([a-z0-9]{2,})|([a-z0-9][-][a-z0-9]+))[\.][a-z0-9])|([a-z0-9]+[-]?))+[a-z0-9]+\.([a-z]{2}|(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum))$/i;
    	if(re.test(eval("document.forms['"+formname+"']."+fieldname+".value"))) return true;
    	else {
    		alert("Email is incorrect!");
    		eval("document.forms['"+formname+"']."+fieldname+".focus()");
    		return false; 
    	} 
    }
    </script>
    <form action="" name="contactForm" onsubmit="return isEmailCorrect('contactForm', 'email')">
    <input type="text" name="email">
    <input type="submit" value="Check email">
    </form>
    
     
Статус темы:
Закрыта.