質問編集履歴
3
誤字
title
CHANGED
File without changes
|
body
CHANGED
@@ -64,4 +64,4 @@
|
|
64
64
|
|
65
65
|
のように、subject1とsubject2をORではできないのでしょうか?(試しましたが動作しませんでした。)
|
66
66
|
|
67
|
-
"{$subject}%"とすれば格納されている文字列に余計なものが入力されていても抽出されると思ったのですが、、
|
67
|
+
"{$subject}%"とすれば格納されている文字列に余計なものが続いて入力されていても抽出されると思ったのですが、、
|
2
追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -54,4 +54,14 @@
|
|
54
54
|
|
55
55
|
複雑で面倒な質問で本当にすみません。もしわかる方がいれば知恵を拝借させてください。
|
56
56
|
|
57
|
-
よろしくお願いします。
|
57
|
+
よろしくお願いします。
|
58
|
+
|
59
|
+
|
60
|
+
以下追記です。________________________________________________________________________
|
61
|
+
|
62
|
+
$stm->bindValue(':subject1', "%{$subject}%", PDO::PARAM_STR);
|
63
|
+
$stm->bindValue(':subject2', "{$subject}%", PDO::PARAM_STR);
|
64
|
+
|
65
|
+
のように、subject1とsubject2をORではできないのでしょうか?(試しましたが動作しませんでした。)
|
66
|
+
|
67
|
+
"{$subject}%"とすれば格納されている文字列に余計なものが入力されていても抽出されると思ったのですが、、
|
1
自己改善した
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
質問を訂正しました。
|
2
|
+
|
1
3
|
PHPとMySQLを使って以下のような機能を実装したいです。
|
2
4
|
|
3
5
|
難易度、科目名、講師名の3つのカラムを持つテーブルがあり、いくつかのレコードが格納されています。
|
@@ -9,30 +11,21 @@
|
|
9
11
|
「科目名」と「講師名」は<input type="text">で設定します。
|
10
12
|
|
11
13
|
|
12
|
-
条件
|
14
|
+
検索の条件は
|
13
15
|
|
14
16
|
```
|
15
|
-
|
17
|
+
検索者は「難易度」の選択のみが必須で、「科目名」と「講師名」の入力は任意。
|
16
18
|
|
17
|
-
|
19
|
+
```
|
18
20
|
|
19
|
-
|
21
|
+
できなくて困っていることは
|
20
|
-
|
21
|
-
|
22
22
|
```
|
23
|
+
例えば「数学」として格納されているデータを抽出するのに、
|
24
|
+
「数」では引っかかってくれるのですが、「数学者」では引っかからないことです。
|
23
25
|
```
|
24
|
-
例えば、「難易度:易 科目名:数学 講師名:山田太郎」このレコードに対して
|
25
26
|
|
26
|
-
難易度「易」選択で「科目名」が未入力で、「講師名」に「山田太郎」と入力すれば、
|
27
|
-
「易」かつ「山田太郎」のレコードを抽出するので、これは引っかかる。
|
28
27
|
|
29
|
-
文字列は完全一致でなくても抽出する。
|
30
|
-
この場合、講師名は「山田」や「山田太郎丸」等も引っかかるようにしたいです。
|
31
|
-
(できれば3文字以上の一致があれば抽出等にしたいです。)
|
32
|
-
```
|
33
28
|
|
34
|
-
|
35
|
-
|
36
29
|
ポストされたデータは、難易度が$difficulty、科目名が$subject、講師名が$teacherに代入してあります。。テーブル名はtableです。
|
37
30
|
|
38
31
|
汚いコードですが書いてみたものです。
|
@@ -54,11 +47,10 @@
|
|
54
47
|
//上と同じ処理
|
55
48
|
}
|
56
49
|
```
|
57
|
-
まず選択必須の難易度$difficultyは条件分岐しなくてもできるでしょうか?
|
58
50
|
|
59
|
-
|
51
|
+
WHEREをどのようにすれば、入力文字が実際のデータの文字列を超えていても抽出できるのでしょうか?
|
52
|
+
また選択必須の難易度$difficultyは条件分岐しなくてもできるでしょうか?
|
60
53
|
|
61
|
-
検索ワードの欄が複数ある時のWHEREはどのように書くのでしょうか?
|
62
54
|
|
63
55
|
複雑で面倒な質問で本当にすみません。もしわかる方がいれば知恵を拝借させてください。
|
64
56
|
|