Skip to content

Commit eeb9719

Browse files
committed
forms aktualisieren
1 parent 0593132 commit eeb9719

File tree

4 files changed

+76
-29
lines changed

4 files changed

+76
-29
lines changed

content/assets/css/all.css

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1251,19 +1251,17 @@ textarea[readonly] {
12511251
background-color: #dff0d8;
12521252
border-color: #468847;
12531253
}
1254-
input:focus:required:invalid,
1255-
textarea:focus:required:invalid,
1256-
select:focus:required:invalid {
1257-
color: #b94a48;
1258-
border-color: #ee5f5b;
1259-
}
1260-
input:focus:required:invalid:focus,
1261-
textarea:focus:required:invalid:focus,
1262-
select:focus:required:invalid:focus {
1263-
border-color: #e9322d;
1264-
-webkit-box-shadow: 0 0 6px #f8b9b7;
1265-
-moz-box-shadow: 0 0 6px #f8b9b7;
1266-
box-shadow: 0 0 6px #f8b9b7;
1254+
input:invalid,
1255+
textarea:invalid,
1256+
select:invalid {
1257+
1258+
box-shadow: 0px 0px 5px red;
1259+
}
1260+
input:invalid,
1261+
textarea:invalid,
1262+
select:invalid {
1263+
1264+
box-shadow: 0px 0px 5px red;
12671265
}
12681266
.form-actions {
12691267
padding: 17px 20px 18px;

content/formulare/action.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ drücken? Meist werden Sie an den Webserver zur weiteren Verarbeitung geschickt.
88
Diese action wird direkt im `<form>`-Tag angegeben.
99

1010
<htmlcode>
11-
<form action="http://multimediatechnology.at/~fhs666/pizza/bestellung.php">
11+
<form action="https://users.ct.fh-salzburg.ac.at/~bjelline/pizza/bestellung.php">
1212
</htmlcode>
1313

1414
Für die Verarbeitung der Daten braucht man ein serverseitiges Programm - hier
@@ -72,7 +72,7 @@ Die URL wird zusammengestellt aus:
7272
* Eingegebener / angeklickter Wert
7373

7474
Falls dabei Sonderzeichen vorkommen (z.B. Leerzeichen, Zeilenumbrüche, Umlaute,
75-
Fragezeichen, kaufmännisches Und) werden diese wie folgt encodiert:
75+
Fragezeichen, kaufmännisches Und) werden diese wie folgt encodiert:
7676

7777
Statt
7878
Leerzeichen wird ein `+` oder `%20` gesetzt, bei allen anderen Zeichen wird ein `%`
@@ -122,7 +122,7 @@ im Skype-Chat weitergegen habe, sind dritten bekannt, wie [diese Untersuchung vo
122122
Das "geheimhalten" einer URL ist also keine geeignete Sicherheitsmaßnahme!
123123
Wenn ich eine Webseite vor Zugriffen schützen will brauche ich dazu Passwörter
124124
und https, siehe [Authentisieren nach RFC 2617](/http/http/#slide-18)
125-
und [HTTPS](/http/http/slide.html#slide-19), beide im Kapitel HTTP, und
125+
und [HTTPS](/http/http/slide.html#slide-19), beide im Kapitel HTTP, und
126126
das [Kapitel über Sessions](/session/).
127127

128128

@@ -134,7 +134,7 @@ Ein lehrreiches Beispiel aus der Frühzeit des Web: es gab einst Webshops, die d
134134
<form action="order.php" method="GET">
135135
Anzahl: <input name="anzahl"> <br>
136136
Adresse: <textarea name="adresse"></textarea><br>
137-
Preis: 1.000.000 DM
137+
Preis: 1.000.000 DM
138138
<input type="hidden" name="preis" value="1000000">
139139
<input type="submit" value="Bestellung absenden">
140140
</form>
@@ -151,6 +151,6 @@ Wenn nun das Programm `order.php` einfach den Preis aus der URL übernimmt und
151151
auf die Rechnung schreibt, wird der Airbus recht günstig (für die KundIn)
152152
verkauft.
153153

154-
Merke: Alle Eingaben die eine Web-Applikation erhält sind mit extremer Skepsis zu betrachten!
154+
Merke: Alle Eingaben die eine Web-Applikation erhält sind mit extremer Skepsis zu betrachten!
155155

156156

content/formulare/check.md

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,12 @@ sofort zu prüfen und Rückmeldung zu geben.
1111
## Tags für Formulare
1212

1313
Mit den HTML-Attributen `required`, `minlength`, `maxlength`, und einigen mehr kann
14-
man die Eingabe in einem Text-Eingabefehld prüfen:
14+
man die Eingabe in einem Text-Eingabefeld prüfen:
1515

1616
<htmlcode caption="Einfaches Formular">
1717
<form method="get" action="bestellung.php">
1818
...
19-
<input type="text" name="fullname" minlength="2" maxlength="200">
19+
<input type="text" name="fullname" required minlength="4" maxlength="8">
2020
...
2121
<input type="submit" value="Bestellen">
2222
</form>
@@ -26,16 +26,18 @@ man die Eingabe in einem Text-Eingabefehld prüfen:
2626
So sieht das Formular im Browser aus:
2727

2828
<form method="get" action="bestellung.php">
29-
<input type="text" name="fullname" minlength="2" maxlength="200">
29+
<input type="text" name="fullname" required minlength="4" maxlength="8">
3030
<input type="submit" value="Bestellen">
3131
</form>
3232

33+
34+
3335
## pattern
3436

3537
Mit dem Attribut `pattern` kann man ein "Muster" für den eigegebenen String vorgeben.
36-
Dieses "Muster" besteht im einfachsten fall aus einem Stück Text, im komplizierten
37-
Fall aus einer Folge von Sonderzeichen. Es handelt sich um eine eigene kleine Programmiersprache,
38-
einer sogenannten "Regular Expression".
38+
Dieses "Muster" besteht im einfachsten Fall aus einem Stück Text, im komplizierten
39+
Fall aus einer Folge von Sonderzeichen. Es handelt sich um eine eigene kleine Programmiersprache
40+
mit dem Namen "Regular Expression".
3941

4042

4143
<htmlcode caption="Formular mit pattern">
@@ -55,7 +57,7 @@ CSS selektieren:
5557

5658
<css>
5759
:invalid {
58-
background-color: pink;
60+
box-shadow: 0px 0px 5px red;
5961
}
6062
</css>
6163

content/images/formulare/fieldset.html

Lines changed: 51 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,20 +4,67 @@
44
<head>
55
<meta charset="utf-8">
66
<title>Demo: Fieldset</title>
7+
<style>
8+
main {
9+
max-width: 600px;
10+
}
11+
label {
12+
display: block;
13+
}
14+
#output {
15+
margin-top: 3em;
16+
display: grid;
17+
grid-template-columns: 1fr 1fr;
18+
gap: 2px;
19+
}
20+
#output > * {
21+
background-color: lightcyan;
22+
}
23+
b {
24+
text-align: right;
25+
}
26+
</style>
727
</head>
828

929
<body>
30+
<main>
1031
<h1>Demo: Fieldset</h1>
1132

1233

1334
<form action="#">
1435
<fieldset>
1536
<legend>Kreditkarte</legend>
16-
<input name="nr" placeholder="0000 0000 0000 0000">
17-
<label><input type="radio" name="kk" value="Master"> Master</label>
18-
<label><input type="radio" name="kk" value="Visa"> Visa</label>
37+
<lable>Nummer: <input name="nr" placeholder="0000 0000 0000 0000"></lable>
38+
<lable>Person: <input name="card_holder"></lable>
39+
<label><input type="radio" name="card_type" value="Mastercard"> Mastercard</label>
40+
<label><input type="radio" name="card_type" value="Visa"> Visa</label>
1941
</fieldset>
42+
43+
<fieldset>
44+
<legend>Adresse</legend>
45+
<label>Strasse und Hausnummer: <input name="strasse"></label>
46+
<label>Postleitzahl: <input name="plz"></label>
47+
<label>Ort: <input name="ort"></label>
48+
</fieldset>
49+
50+
<input type="submit">
51+
<a href="?">zurück zum leeren Formular</a>
2052
</form>
53+
54+
<section id="output">
55+
56+
</section>
57+
<script>
58+
const urlParams = new URLSearchParams(window.location.search);
59+
const out = document.getElementById('output');
60+
61+
62+
urlParams.forEach((value, key) => {
63+
out.innerHTML += "<strong>" + key + "</strong>";
64+
out.innerHTML += "<span>" + value + "</span>";
65+
});
66+
</script>
67+
</main>
2168
</body>
2269

23-
</html>
70+
</html>

0 commit comments

Comments
 (0)