HTML форма със задължителни полета

Post Reply
djidja83
Нов
Нов
Posts: 45
Joined: Sat Jan 02, 2016 9:49 pm

HTML форма със задължителни полета

Post by djidja83 » Wed Jun 27, 2018 7:50 pm

Последен въпрос по прословутата ми дипломна работа - има ли начин input поле от форма да се направи задължително за попълване, но само с HTML - за js зная, но вече нямам време да пиша скрипт.

[html]<table border=0>
<tr><td>Обиколка на талията в сантиметри: </td><td><input type="text" name="a" pattern="[0-9]{2,3}" title="Моля въведете валидна цифрова стойност!"></td></tr>
<tr><td>Обиколка на ханша в сантиметри: </td><td><input type="text" name="b" pattern="[0-9]{2,3}" title="Моля въведете валидна цифрова стойност!"></td></tr>
<tr><td>Височина в сантиметри: </td><td><input type="text" name="c" pattern="[0-9]{3}" title="Моля въведете валидна цифрова стойност!"></td></tr>
<tr><td>Тегло в килограми: </td><td><input type="text" name="d" pattern="[0-9]{2,3}" title="Моля въведете валидна цифрова стойност!"></td></tr>
<tr><td>Начин на живот: </td><td><select name="activity" required size="1">
<option value= "" selected disabled> Моля изберете начин на живот!</option>
<option value="1.0">Заседнал начин на живот</option>
<option value="1.2">Лека активност (ходене пеша)</option>
<option value="1.4">Спортуване 3 пъти седмично по 30 минути</option>
<option value="1.6">Спортуване 5 пъти седмично по 1 час</option>
<option value="1.8">Спортуване 5 пъти седмично по 2 часа</option>
<option value="2.0">Трениране всеки ден</option>
</td></tr>
</select>
<tr><td colspan=2 align=right><input type=submit name="operation" value=Изчисли></td></tr>

</table>[/html]

Пробвах с required, но или не става или не зная къде точно да го сложа.

Благодаря!

User avatar
Revelation
Web-tourist
Web-tourist
Posts: 883
Joined: Sun Mar 24, 2013 1:23 pm
Answers: 63

Post by Revelation » Wed Jun 27, 2018 7:57 pm

Какво по-точно не се получава с required?

Принципно required си е атрибута, който задължава полето да бъде попълнено.

Между другото, уверявай се, че добавяш правилния DOCTYPE винаги отгоре, за да знае браузъра за какъв HTML става въпрос.

В случая ти трябва:

[html]
<!DOCTYPE html>
<html>
...
[/html]

И като допълнение за в бъдеще, никога не се доверявай само на защита от client-side (атрибути като този или JavaScript). Дори да ги правиш, винаги трябва да имаш защита откъм server-side(PHP).
Данните трябва да се филтрират навсякъде(особено откъм сървъра, защото клиента се заобикаля лесно).

djidja83
Нов
Нов
Posts: 45
Joined: Sat Jan 02, 2016 9:49 pm

Post by djidja83 » Wed Jun 27, 2018 8:04 pm

При select списъка работи, но в input полетата го местих къде ли не и не сработва.

Това ми е doctype в кодовете

[html]
<!doctype html>
<html>[/html]

Благодаря за съвета - на този етап това е само дипломна работа, която няма да бъде истински сайт, но за в бъдеще ще го имам предвид.

User avatar
anonimen
Web-tourist
Web-tourist
Posts: 1580
Joined: Mon Jun 11, 2012 6:07 pm
Answers: 163
Location: Parse error: unexpected "}" in /home/index.php on line 26

Post by anonimen » Wed Jun 27, 2018 8:10 pm

По спецификация required задължава полето да бъде попълнено преди изпращане на формата (т.е. <form> тага)

Ако нямаш <form>, а пращаш нещата с javascript (както индикираш във въпроса - но не съм сигурен), то от required няма особен смисъл, защото неговата функция е само при форми.

Иначе тук можеш да видиш работещи примери с required:

https://www.w3schools.com/tags/att_input_required.asp

И да си сведеш своя код до нещо по-просто, и да видиш къде се различава с този в примерите, за да разбереш къде бъркаш.

djidja83
Нов
Нов
Posts: 45
Joined: Sat Jan 02, 2016 9:49 pm

Post by djidja83 » Wed Jun 27, 2018 8:17 pm

Форма е - изпуснала съм да копирам първия &#1117; ред

[html] <form action="math.php" method="POST">[/html]

djidja83
Нов
Нов
Posts: 45
Joined: Sat Jan 02, 2016 9:49 pm

Post by djidja83 » Wed Jun 27, 2018 8:22 pm

Оправих се.
Благодаря!

Post Reply