回答編集履歴
5
ad
test
CHANGED
@@ -21,4 +21,4 @@
|
|
21
21
|
★⑧完了画面でF5などで画面更新すると情報再送信で再度登録処理が走ります(二重送信対策などで調べてください)
|
22
22
|
⑨完了画面の「顧客テーブル画面に戻る」はPOSTで送信しなくても良いのでは
|
23
23
|
|
24
|
-
以上です
|
24
|
+
以上です
|
4
追記
test
CHANGED
@@ -9,15 +9,16 @@
|
|
9
9
|
画面にはラベルで表示させてhiddenを設置しましょう。
|
10
10
|
※それでもブラウザのデベロッパーツールからの編集は可能なので、PHP側でのバリデーションは必須です
|
11
11
|
|
12
|
-
|
12
|
+
------
|
13
|
+
他気になった点(結構細かいところもあるので、★をつけたところ以外は出来る範囲からで良いと思います):
|
13
|
-
|
14
|
+
★①ユーザーが入力された情報をそのままHTMLに出力しているので[XSSの脆弱性](https://www.shadan-kun.com/waf/xss/)がある
|
14
|
-
|
15
|
+
②日本語ファイル名(特にURLとなるもの)は基本弊害しかない([例1](https://qiita.com/REAS_7/items/3f86a0834d612edaecd6)、[例2](https://www.lucidas.co.jp/japanese_urls.html))ので安易に利用すべきではありません。DB名、テーブル名、カラム名なども同様。
|
15
|
-
|
16
|
+
③INSERT-SETはMySQL独自の記法であるため、そのまま覚えてしまうと別のDBを利用するときに苦労します
|
16
|
-
|
17
|
+
★④INSERT作ってるprepareで$statementを上書きしてます。これでは後者しか実行されないのでは。複数カラム更新の文法もあるので調べてください(まずはSQLを作るところから)
|
17
|
-
|
18
|
+
★⑤エラーからするとuseridの初期値が0に設定されていて整数型で定義されているのでしょうか。となるとtype=textで入力し、バリデーションが何もないのは実装としてマズいと思います。
|
18
|
-
|
19
|
+
⑥「顧客」と仰っていますが文言は「転入生」など表記や仕様のブレを感じます。設計統一されていますか?
|
19
|
-
|
20
|
+
⑦「下記の情報で登録しますがよろしいですか?」とあるが、よろしくない場合に画面内に戻る手段がない(ブラウザバックは極力させない方が良いと思いますし、確認画面を表示するメリットってユーザーにとっても開発者にとってもあまりないんですよね)
|
20
|
-
|
21
|
+
★⑧完了画面でF5などで画面更新すると情報再送信で再度登録処理が走ります(二重送信対策などで調べてください)
|
21
|
-
|
22
|
+
⑨完了画面の「顧客テーブル画面に戻る」はPOSTで送信しなくても良いのでは
|
22
23
|
|
23
24
|
以上です。
|
3
ed
test
CHANGED
@@ -16,6 +16,7 @@
|
|
16
16
|
・INSERT作ってるprepareで$statementを上書きしてます。これでは後者しか実行されないのでは。複数カラム更新の文法もあるので調べてください(まずはSQLを作るところから)
|
17
17
|
・エラーからするとuseridの初期値が0に設定されていて整数型で定義されているのでしょうか。となるとtype=textで入力し、バリデーションが何もないのは実装としてマズいと思います。
|
18
18
|
・「顧客」と仰っていますが文言は「転入生」など表記や仕様のブレを感じます。設計統一されていますか?
|
19
|
+
・「下記の情報で登録しますがよろしいですか?」とあるが、よろしくない場合に画面内に戻る手段がない(ブラウザバックは極力させない方が良いと思いますし、確認画面を表示するメリットってユーザーにとっても開発者にとってもあまりないんですよね)
|
19
20
|
・完了画面でF5などで画面更新すると情報再送信で再度登録処理が走ります(二重送信対策などで調べてください)
|
20
21
|
・完了画面の「顧客テーブル画面に戻る」はPOSTで送信しなくても良いのでは
|
21
22
|
|
2
ed
test
CHANGED
@@ -2,6 +2,8 @@
|
|
2
2
|
|
3
3
|
> https://developer.mozilla.org/ja/docs/Web/HTML/Element/Input#disabled
|
4
4
|
> 特に、無効になった入力欄は click イベントを受け取らず、フォームと共に送信されることもありません。
|
5
|
+
|
6
|
+
$_POSTに想定の値が入っているか確認してください。
|
5
7
|
|
6
8
|
「編集させたくないけど送信はしたい」のでしたらreadonlyか、
|
7
9
|
画面にはラベルで表示させてhiddenを設置しましょう。
|
1
ad
test
CHANGED
@@ -2,6 +2,10 @@
|
|
2
2
|
|
3
3
|
> https://developer.mozilla.org/ja/docs/Web/HTML/Element/Input#disabled
|
4
4
|
> 特に、無効になった入力欄は click イベントを受け取らず、フォームと共に送信されることもありません。
|
5
|
+
|
6
|
+
「編集させたくないけど送信はしたい」のでしたらreadonlyか、
|
7
|
+
画面にはラベルで表示させてhiddenを設置しましょう。
|
8
|
+
※それでもブラウザのデベロッパーツールからの編集は可能なので、PHP側でのバリデーションは必須です
|
5
9
|
|
6
10
|
他気になった点:
|
7
11
|
・ユーザーが入力された情報をそのままHTMLに出力しているので[XSSの脆弱性](https://www.shadan-kun.com/waf/xss/)がある
|