回答編集履歴
1
見直し
answer
CHANGED
@@ -64,4 +64,42 @@
|
|
64
64
|
投稿番号のみを管理するファイルを設け、
|
65
65
|
投稿を書き込むたびに+1した内容に更新する。
|
66
66
|
|
67
|
-
などといった方法が考えられます。
|
67
|
+
などといった方法が考えられます。
|
68
|
+
|
69
|
+
投稿データの書き込みの箇所でもう一点。
|
70
|
+
|
71
|
+
```php
|
72
|
+
/*書き込む文字列を組み合わせた変数*/
|
73
|
+
$data = "$num <> $name <> $comment <> $date". PHP_EOL;
|
74
|
+
```
|
75
|
+
|
76
|
+
こんな連結方法でいいのでしょうか?
|
77
|
+
分離方法が
|
78
|
+
|
79
|
+
```php
|
80
|
+
$result = explode("<>", $value);
|
81
|
+
```
|
82
|
+
|
83
|
+
となっているので、どちらかに統一しないと、
|
84
|
+
前後に余計に空白がついたデータが使われます。
|
85
|
+
HTML上に出力したソースコードで意図せず空白が前後についていると思われます。
|
86
|
+
揃えるなら例えば
|
87
|
+
|
88
|
+
```php
|
89
|
+
$result = explode(" <> ", $value);
|
90
|
+
```
|
91
|
+
|
92
|
+
とするか、そもそも連結箇所を
|
93
|
+
|
94
|
+
```php
|
95
|
+
/*書き込む文字列を組み合わせた変数*/
|
96
|
+
$data = implode("<>", [$num, $name, $comment, $date]) . PHP_EOL;
|
97
|
+
```
|
98
|
+
|
99
|
+
などとするかです。
|
100
|
+
|
101
|
+
まぁ、それを言い出すと、
|
102
|
+
フォームで投稿文字列に「<>」が入っている場合の対策がないことも気になります。
|
103
|
+
$nameや$commentに当たる箇所に「<>」が入っていると、
|
104
|
+
ファイルから読み出して分離するときに投稿データに含まれる「<>」で区切られると
|
105
|
+
おかしなことになります。
|