質問するログイン新規登録

回答編集履歴

1

追記

2017/05/18 12:54

投稿

退会済みユーザー
answer CHANGED
@@ -8,4 +8,24 @@
8
8
  ・htmlspecialchars の使用箇所が適切ではない
9
9
  辺りが気になります。
10
10
 
11
- post の取扱は php でアプリ作る時の基本なので、もう少し良い教材を選んだほうがイイです。
11
+ post の取扱は php でアプリ作る時の基本なので、もう少し良い教材を選んだほうがイイです。
12
+
13
+ ** 追記 **
14
+ このままでは、このコードを活かしそうなので、補足します。
15
+
16
+ ・post データの取扱が適切ではない
17
+ そもそも post 受け取り時に`E_NOTICE` が出るようなコードを参考にするのは間違っています。
18
+ すでに s8_chu さんが修正案を出してくれていますが、個人的には以下の書き方が好きです。
19
+ `$staff_name= filter_input(INPUT_POST, 'name');`
20
+
21
+ ・ハッシュ化が現在の推奨方法と違う
22
+ PHP でパスワードを扱うときには`password_hash()`の使用が推奨されています。
23
+ `md5()`が不適切な理由も以下に記述があります。
24
+ [安全なパスワードハッシュ](http://php.net/manual/ja/faq.passwords.php)
25
+ また、`staff_add_check.php`でハッシュ化してますが、一般的には`staff_add_done.php`でハッシュ化します。
26
+
27
+ ・htmlspecialchars の使用箇所が適切ではない
28
+ htmlspecialchars は出力時に使用します。入力値を変換して比較するとか、あり得ない暴挙です。
29
+
30
+ さらに追記すると、比較演算子に`==`も推奨されません。
31
+ 特別な理由がない限り(特に初心者のうちは)、`===`や`!==`の型まで含めた比較を行うことをオススメします。