回答編集履歴

1

見直し

2020/08/30 06:46

投稿

退会済みユーザー
test CHANGED
@@ -131,3 +131,79 @@
131
131
 
132
132
 
133
133
  などといった方法が考えられます。
134
+
135
+
136
+
137
+ 投稿データの書き込みの箇所でもう一点。
138
+
139
+
140
+
141
+ ```php
142
+
143
+ /*書き込む文字列を組み合わせた変数*/
144
+
145
+ $data = "$num <> $name <> $comment <> $date". PHP_EOL;
146
+
147
+ ```
148
+
149
+
150
+
151
+ こんな連結方法でいいのでしょうか?
152
+
153
+ 分離方法が
154
+
155
+
156
+
157
+ ```php
158
+
159
+ $result = explode("<>", $value);
160
+
161
+ ```
162
+
163
+
164
+
165
+ となっているので、どちらかに統一しないと、
166
+
167
+ 前後に余計に空白がついたデータが使われます。
168
+
169
+ HTML上に出力したソースコードで意図せず空白が前後についていると思われます。
170
+
171
+ 揃えるなら例えば
172
+
173
+
174
+
175
+ ```php
176
+
177
+ $result = explode(" <> ", $value);
178
+
179
+ ```
180
+
181
+
182
+
183
+ とするか、そもそも連結箇所を
184
+
185
+
186
+
187
+ ```php
188
+
189
+ /*書き込む文字列を組み合わせた変数*/
190
+
191
+ $data = implode("<>", [$num, $name, $comment, $date]) . PHP_EOL;
192
+
193
+ ```
194
+
195
+
196
+
197
+ などとするかです。
198
+
199
+
200
+
201
+ まぁ、それを言い出すと、
202
+
203
+ フォームで投稿文字列に「<>」が入っている場合の対策がないことも気になります。
204
+
205
+ $nameや$commentに当たる箇所に「<>」が入っていると、
206
+
207
+ ファイルから読み出して分離するときに投稿データに含まれる「<>」で区切られると
208
+
209
+ おかしなことになります。