Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 1
Регистрация: 05.09.2015
Сообщений: 212
1

валидация формы

21.04.2017, 11:44. Показов 458. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый час !
подскажите пожалуйста, почему при нажатии на кнопку типа submit в форме не срабатывает проверка написанная на js ? Сейчас после нажатия, выполнаяеться переход на файл обработчик указанный в action.

форма
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
<?php
include_once "db/db.php";
if($_POST){
        if(isset($_POST['wallet'])){
                if(!empty($_POST['wallet'])){
                        $WMwallet = $_POST['wallet'];
                }
        }
 
        if(isset($_POST['firstName'])){
                if(!empty($_POST['firstName'])){
                        $Fname = $_POST['firstName'];
                }
        }
 
        if(isset($_POST['lastName'])){
                if(!empty($_POST['lastName'])){
                        $Lname = $_POST['lastName'];
                }
        }
 
        if(isset($_POST['bankNumber'])){
                if(!empty($_POST['bankNumber'])){
                        $Bacc = $_POST['bankNumber'];
                }
        }
 
        if(isset($_POST['email'])){
                if(!empty($_POST['email'])){
                        $email = $_POST['email'];
                }
        }
if(isset($_POST['bankNumber'])){
echo "<strong>Данные для обмена</strong>" . "<br />" .
     "Ваш кошелек: " . $WMwallet . "<br />" .
     "Ваше имя: " . $Fname . "<br />" .
     "Ваш фамилия: " . $Lname . "<br />" .
     "Ваш расчетный счет: " . $Bacc . "<br />" .
     "Ваш email: " . $email;
}
}
 
?>
 
 <div class="forma">
        
        <form action="handler.php" method="POST" id="formMain">
 
        <span class="wmWallet">Укажите ваш кошелек<span class="red">*</span></span>
        <div>
        <input type="text" name="wallet"> <br />
        </div>
 
 
        <span class="firstName">Ваше имя<span class="red">*</span></span>
        <span>
        <input type="text" name="firstName" > <br />
        </span>
 
        <span class="lastName">Ваша фамилия<span class="red">*</span></span>
        <span>
        <input type="text" name="lastName"> <br />
        </span>
 
        <span class="bankAcc">Номер расчетного счета в банке<span class="red">*</span></span>
        <span>
        <input type="text" name="bankNumber" > <br />
        </span>
 
        <span class="email">Email<span class="red">*</span></span>
        <span>
        <input type="text" name="email"  style="width:250px;"> <br />
        </span>
 
</div>

валидация формы
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
 function showError(container, errorMessage) {
      container.className = 'error';
      var msgElem = document.createElement('span');
      msgElem.className = "error-message";
      msgElem.innerHTML = errorMessage;
      container.appendChild(msgElem);
    }
 
    function resetError(container) {
      container.className = '';
      if (container.lastChild.className == "error-message") {
        container.removeChild(container.lastChild);
      }
    }
 
    function validate(form) {
      form.preventDefault();
      var elems = form.elements;
 
      resetError(elems.wallet.parentNode);
      if (!elems.wallet.value) {
        showError(elems.wallet.parentNode, ' Укажите ваш кошелек.');
      }
 
      resetError(elems.firstName.parentNode);
      if (!elems.firstName.value) {
        showError(elems.firstName.parentNode, ' Укажите ваше имя.');
      }
 
      resetError(elems.lastName.parentNode);
      if (!elems.lastName.value) {
        showError(elems.lastName.parentNode, ' Укажите вашу фамилию.');
      }
 
 
      resetError(elems.bankNumber.parentNode);
      if (!elems.bankNumber.value) {
        showError(elems.bankNumber.parentNode, ' Укажите расчетный счет.');
      }
 
 
      resetError(elems.email.parentNode);
      if (!elems.email.value) {
        showError(elems.email.parentNode, ' Укажите ваш email.');
      }
    }
ну и сама кнопка
HTML5
1
 <input type="submit" class="btn-class" value="Продолжить" name="submitBtn" onsubmit="validate(this.form);" style="margin-left: 28.5%; margin-top:0px;">
Добавлено через 41 минуту
так срабатывает валидация, но тогда форма не сабмититься.
HTML5
1
<input type="button" class="btn-class" value="Продолжить" name="submitBtn" onclick="validate(this.form);" style="margin-left: 28.5%; margin-top:0px;">
Добавлено через 10 минут
если в форме указать событие onsubmit то валидация срабатывает, но позволяет перейти на файл обработчик.
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<form action="handler.php" method="POST" id="formMain" onsubmit="validate(this.form);">
 
        <span class="wmWallet">Укажите ваш кошелек<span class="red">*</span></span>
        <div>
        <input type="text" name="wallet"> <br />
        </div>
 
 
        <span class="firstName">Ваше имя<span class="red">*</span></span>
        <span>
        <input type="text" name="firstName" > <br />
        </span>
 
        <span class="lastName">Ваша фамилия<span class="red">*</span></span>
        <span>
        <input type="text" name="lastName"> <br />
        </span>
 
        <span class="bankAcc">Номер расчетного счета в банке<span class="red">*</span></span>
        <span>
        <input type="text" name="bankNumber" > <br />
        </span>
 
        <span class="email">Email<span class="red">*</span></span>
        <span>
        <input type="text" name="email"  style="width:250px;"> <br />
        </span>
Добавлено через 4 минуты
спасибо за внимание, вопрос решен.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.04.2017, 11:44
Ответы с готовыми решениями:

Валидация формы
Здравствуйте. Как сделать чтобы атрибуты html 5 например, такие как &quot;минимальное количество...

Валидация формы
Здравствуйте! Кто-то может глянет, все ли возможные варианты проверок выполнены: if...

Валидация формы
Добрый день! Надежда только на вас Сейчас будет запутанно, но постарайтесь понять Сделала...

Валидация формы
Добрый день! Надежда только на вас Сейчас будет запутанно, но постарайтесь понять Сделала...

1
Заблокирован
21.04.2017, 13:37 2
А для других, чтобы было не повадно: Вкуриваем документацию – это не сложно!
https://learn.javascript.ru/de... 1%80%D0%B0
1
21.04.2017, 13:37
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.04.2017, 13:37
Помогаю со студенческими работами здесь

Валидация полей формы
Форма регистрации имеет четыре поля: фамилия, имя, email и пароль. Данные записываются в базу...

Валидация формы с аттачем
Здравствуйте есть форма: &lt;form action=&quot;&lt;?php echo $action_url; ?&gt;&quot; method=&quot;post&quot;...

Валидация формы PHP
Помогите пожалуйста дописать код. Мне нужно к этому коду дописать проверку формы на обязательное...

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru