回答編集履歴

2

見直し

2021/04/22 09:10

投稿

退会済みユーザー
test CHANGED
@@ -50,7 +50,7 @@
50
50
 
51
51
  $keywords = [];
52
52
 
53
- if (!isset($_POST['name'])) { // バリデーション甘々
53
+ if (isset($_POST['name'])) { // 値が入っていれば配列に追加する
54
54
 
55
55
  $phrases[] = 'name like ?';
56
56
 
@@ -58,7 +58,7 @@
58
58
 
59
59
  }
60
60
 
61
- if (!isset($_POST['message'])) { // バリデーション甘々
61
+ if (isset($_POST['message'])) { // 値が入っていれば配列に追加する
62
62
 
63
63
  $phrases[] = 'message like ?';
64
64
 

1

見直し

2021/04/22 09:10

投稿

退会済みユーザー
test CHANGED
@@ -40,11 +40,15 @@
40
40
 
41
41
  nameとmessageを相手に、入力があるかないかわからないけど対応させたいわけですね。
42
42
 
43
+ where句以降を作るのに例えばこんなとか。
44
+
43
45
 
44
46
 
45
47
  ```php
46
48
 
47
49
  $phrases = [];
50
+
51
+ $keywords = [];
48
52
 
49
53
  if (!isset($_POST['name'])) { // バリデーション甘々
50
54
 
@@ -62,7 +66,13 @@
62
66
 
63
67
  }
64
68
 
69
+ var_dump($phrases); // 中身をチェックしてみてね
70
+
71
+ var_dump($keywords); // 中身をチェックしてみてね
72
+
65
73
  $where_phrase = implode(' and ', $phrases);
74
+
75
+ var_dump($where_phrase); // 中身をチェックしてみてね
66
76
 
67
77
  $sql2 .= 'where ' . $where_phrase;
68
78
 
@@ -75,3 +85,5 @@
75
85
  ```
76
86
 
77
87
  みたいになる? 机上のコードなのでテストよろしく。
88
+
89
+ var_dump()とかvar_export()で変数の中身を覗いてみるといいよ。