回答編集履歴
1
加筆修正
test
CHANGED
@@ -10,7 +10,7 @@
|
|
10
10
|
|
11
11
|
<body>
|
12
12
|
|
13
|
-
<form method="
|
13
|
+
<form method="POST">
|
14
14
|
|
15
15
|
<p>質問1 <br />
|
16
16
|
|
@@ -98,9 +98,13 @@
|
|
98
98
|
|
99
99
|
$qtq = intval($value1) + intval($value2);
|
100
100
|
|
101
|
+
echo h($qtq);
|
102
|
+
|
103
|
+
} else {
|
104
|
+
|
105
|
+
echo '...';
|
106
|
+
|
101
107
|
}
|
102
|
-
|
103
|
-
echo h($qtq);
|
104
108
|
|
105
109
|
```
|
106
110
|
|
@@ -111,3 +115,15 @@
|
|
111
115
|
数値でないものを処理すると、示されたようなエラーメッセージが表示されます。
|
112
116
|
|
113
117
|
そのため、intval()で加工したり、あるいは`(int)$value1`などと型キャストを明示します。
|
118
|
+
|
119
|
+
|
120
|
+
|
121
|
+
それと、今は想像がつかないかもしれないけど、$_POST[~]で受信したデータは、
|
122
|
+
|
123
|
+
細工すればHTMLフォームに書いていないデータを送り込むことも容易にできるため、
|
124
|
+
|
125
|
+
悪意を持ってhtmlやjavascriptを含むものを送り込まれたら、
|
126
|
+
|
127
|
+
そのままwebブラウザに出力してしまう`echo $_POST['Q1']`というのはやってはいけないです。
|
128
|
+
|
129
|
+
それを回避するために、htmlspecialchars()があります。
|