回答編集履歴

3

引用符わすれてた

2021/03/01 05:19

投稿

退会済みユーザー
test CHANGED
@@ -74,6 +74,10 @@
74
74
 
75
75
  ところで、$_POSTを受信しての編集をするというのは感心しません。
76
76
 
77
+ 不定のkeyを全部扱うつもりですか?
78
+
79
+
80
+
77
81
  $_GETや$_POSTはフォーム送信されたデータが納まる変数ですが、
78
82
 
79
83
  フォームを改ざんするなどして任意のでたらめなデータが送られている可能性を秘めているため、
@@ -108,11 +112,13 @@
108
112
 
109
113
  みたいな要素の繰り返しフォームであれば、
110
114
 
111
- $_POST[target_name][0], $_POST[target_name][1], ・・・
115
+ $_POST['target_name'][0], $_POST['target_name'][1], ・・・
112
116
 
113
- $_POST[target_data][0], $_POST[target_data][1], ・・・
117
+ $_POST['target_data'][0], $_POST['target_data'][1], ・・・
114
118
 
115
119
  にアクセスすることでほしいデータを得られます。
120
+
121
+ わかっているkeyでアクセスできるこっちのほうが、マシです。
116
122
 
117
123
 
118
124
 

2

見直し

2021/03/01 05:19

投稿

退会済みユーザー
test CHANGED
@@ -65,3 +65,57 @@
65
65
  > 'mokomichi' => '2',
66
66
 
67
67
  > )
68
+
69
+
70
+
71
+ ---
72
+
73
+
74
+
75
+ ところで、$_POSTを受信しての編集をするというのは感心しません。
76
+
77
+ $_GETや$_POSTはフォーム送信されたデータが納まる変数ですが、
78
+
79
+ フォームを改ざんするなどして任意のでたらめなデータが送られている可能性を秘めているため、
80
+
81
+ でたらめなデータも含めて余計なデータを消したい、みたいなことは困難になります。
82
+
83
+
84
+
85
+ ですので、通常は欲しいデータだけ$_GETや$_POSTから拾う形になります。
86
+
87
+
88
+
89
+ 例えばですが、HTMLで
90
+
91
+ ```html
92
+
93
+ <input type="hidden" name="target_name[]" value="takasi">takasiさんの入力
94
+
95
+ <select name="target_data[]">
96
+
97
+ <option value="0">0</option>
98
+
99
+ <option value="1">1</option>
100
+
101
+ <option value="2">2</option>
102
+
103
+ </select>
104
+
105
+ ```
106
+
107
+
108
+
109
+ みたいな要素の繰り返しフォームであれば、
110
+
111
+ $_POST[target_name][0], $_POST[target_name][1], ・・・
112
+
113
+ $_POST[target_data][0], $_POST[target_data][1], ・・・
114
+
115
+ にアクセスすることでほしいデータを得られます。
116
+
117
+
118
+
119
+ $_POSTを加工することをやめて、
120
+
121
+ そもそものフォームを工夫しませんか。

1

見直し

2021/03/01 03:00

投稿

退会済みユーザー
test CHANGED
@@ -28,7 +28,7 @@
28
28
 
29
29
  var_export($arr);
30
30
 
31
- unset($arr["mode"]);
31
+ unset($arr["mode"]); // <--- unset() を使えばいいじゃない
32
32
 
33
33
  var_export($arr);
34
34