質問編集履歴

1

自己解決方法の記述

2019/04/16 03:32

投稿

bainary
bainary

スコア58

test CHANGED
File without changes
test CHANGED
@@ -1,5 +1,69 @@
1
- PHPでアドレスを登録した際に一度登録したアドレスを再登録させないようにとって可能です
1
+ 登録フォームを完成させ同じメールアドレスを入力れたら拒否さるよう処理を書きたのでがどに入力させればいいの、どういう風に出力させればいいのか全く分かりません。
2
2
 
3
- また、どういった関数を使用してやっていけばよいでしょうか?
3
+ ```php
4
4
 
5
+ // メールアドレスのバリデーション
6
+
7
+ if (isset($_POST['email']) && mb_strlen($_POST['email']) > 0) {
8
+
9
+ $values['email'] = $_POST['email'];
10
+
11
+ } else {
12
+
13
+ $errors['email'] = 'メールアドレスが未入力です。';
14
+
15
+ }
16
+
17
+
18
+
19
+ // パスワードのバリデーション
20
+
21
+ if (isset($_POST['password']) && mb_strlen($_POST['password']) > 0) {
22
+
23
+ $values['password'] = $_POST['password'];
24
+
25
+ } else {
26
+
27
+ $errors['password'] = '未入力です。';
28
+
29
+ }
30
+
31
+
32
+
33
+ ```
34
+
35
+ このように今一つ一つにバリデーションを組んでいるのですが、ここにも追記して何か書けばいいのでしょうか?
36
+
37
+ また処理を行う際は、どういった書き方でechoして出力すればよいですか?
38
+
39
+ php初心者で沼にはまってしまって抜け出せません。
40
+
41
+ 助けてください。
42
+
43
+ ```php
44
+
45
+ try{ ~~~~~~~
46
+
47
+
48
+
49
+ $email = filter_input(INPUT_POST, 'email');
50
+
51
+ $stmt = $db->prepare('SELECT id FROM '.TABLE_MEMBERS.' WHERE email = :email;');
52
+
53
+ $stmt->bindParam(':email', $email, PDO::PARAM_STR);
54
+
55
+
56
+
57
+ } catch (PDOException $e) {
58
+
59
+ echo 'データベース接続エラー' . $e->getMessage();
60
+
61
+ exit();
62
+
63
+ }
64
+
65
+ ```
66
+
5
- 調べて全く出ない教えてください、お願いします。
67
+ try catchでの処理正確にまだ把握できない次第です。
68
+
69
+ これでどういった処理が行われているのでしょうか。。。