質問編集履歴
2
誤字の修正、状況の追加等
title
CHANGED
File without changes
|
body
CHANGED
@@ -85,7 +85,7 @@
|
|
85
85
|
ON
|
86
86
|
dat_sales_product.code_product = mst_product.pro_code
|
87
87
|
WHERE
|
88
|
-
code_member=?';
|
88
|
+
code_member=?;';
|
89
89
|
|
90
90
|
$stmt=$dbh->prepare($sql);
|
91
91
|
$data[]=$code;
|
1
誤字の修正、状況の説明等
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
|
1
|
+
3つのテーブルを結合してデータを取得したい(php、mysql)
|
body
CHANGED
@@ -1,10 +1,28 @@
|
|
1
|
+
分かりづらい質問ですみません。
|
2
|
+
質問の修正と追加をしました。
|
3
|
+
↓
|
4
|
+
|
1
5
|
現在phpとmysqlの勉強でネットショップを作成しているのですが
|
2
6
|
不明な点がありますのでご教授頂けますでしょうか。
|
3
7
|
|
4
|
-
躓いている内容としましては
|
5
8
|
ログインしている会員の購入履歴を3つのテーブルからデータを取得して表示したい。
|
6
9
|
|
10
|
+
流れとしましては
|
11
|
+
1.メールアドレスとパスワードを元にデータベースから会員のcodeと名前を呼び出し、ログイン
|
12
|
+
2.呼び出したcodeをセッションに格納し、そのcodeを元にログイン中の会員の購入履歴の情報になるデータを3つのテーブルから取得、各変数へ代入
|
13
|
+
3.for文にて一覧表示。
|
7
14
|
|
15
|
+
2番目のコーディングをしているのですが
|
16
|
+
エラー「Notice: Undefined index:●●●.●●」が複数表示されてしまいました。
|
17
|
+
(変数へ代入する箇所です。)
|
18
|
+
うまくテーブルから取得または代入されていない様なので
|
19
|
+
まず取得の確認としてphpmyadminにて直接SELECT文を記述しデータが表示されるか確認した所上手く表示。
|
20
|
+
ではphpファイルへコーディングミスによって取得できていないのかと思い
|
21
|
+
phpへif ( $rec['●●●.●●'] == null ){ echo '取得失敗';}と追記し取得の確認をした所、取得失敗と表示されたのでやはり、データの取得自体が出来ていないようです。
|
22
|
+
色々調べているのですがなかなか解決できずにいます。
|
23
|
+
ご教授頂ければ幸いです。
|
24
|
+
|
25
|
+
|
8
26
|
テーブルの内容
|
9
27
|
【dat_sales】
|
10
28
|
code
|
@@ -19,16 +37,26 @@
|
|
19
37
|
|
20
38
|
【mst_product】
|
21
39
|
pro_code
|
22
|
-
|
40
|
+
pro_name
|
23
|
-
|
41
|
+
pro_subname
|
24
42
|
gazou
|
25
43
|
|
26
44
|
dat_salesテーブルのcode と dat_sales_productテーブルのcode_sales
|
27
45
|
dat_sales_productテーブルのcode_product と mst_productテーブルのpro_code
|
28
|
-
|
46
|
+
で紐づけ。
|
29
47
|
|
30
48
|
以下作成したコードです。
|
49
|
+
<?php
|
50
|
+
session_start();
|
51
|
+
session_regenerate_id(true);
|
52
|
+
|
53
|
+
header("Content-Type: text/html; charset=UTF-8");
|
31
54
|
|
55
|
+
~中略~
|
56
|
+
|
57
|
+
try
|
58
|
+
{
|
59
|
+
|
32
60
|
$code=$_SESSION['member_code'];
|
33
61
|
$name=$_SESSION['member_name'];
|
34
62
|
|
@@ -46,15 +74,15 @@
|
|
46
74
|
mst_product.pro_name,
|
47
75
|
mst_product.pro_subname,
|
48
76
|
mst_product.gazou
|
49
|
-
|
77
|
+
FROM
|
50
78
|
dat_sales
|
51
|
-
|
79
|
+
INNER JOIN
|
52
|
-
|
80
|
+
dat_sales_product
|
53
|
-
|
81
|
+
ON
|
54
82
|
dat_sales.code = dat_sales_product.code_sales
|
55
|
-
|
83
|
+
INNER JOIN
|
56
84
|
mst_product
|
57
|
-
|
85
|
+
ON
|
58
86
|
dat_sales_product.code_product = mst_product.pro_code
|
59
87
|
WHERE
|
60
88
|
code_member=?';
|
@@ -73,8 +101,15 @@
|
|
73
101
|
$subhinmei[]=$rec['mst_product.pro_subname'];
|
74
102
|
$gazou[]=$rec['mst_product.gazou'];
|
75
103
|
|
104
|
+
~中略~
|
76
105
|
|
77
|
-
|
106
|
+
}
|
78
|
-
|
107
|
+
catch(Exception $e)
|
108
|
+
{
|
109
|
+
print'ただいま障害により大変ご迷惑をお掛けしております。';
|
110
|
+
exit();
|
111
|
+
}
|
79
112
|
|
113
|
+
?>
|
114
|
+
|
80
115
|
宜しくお願い致します。
|