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

質問編集履歴

2

誤字の修正、状況の追加等

2016/03/30 01:59

投稿

java.empress
java.empress

スコア16

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

誤字の修正、状況の説明等

2016/03/30 01:59

投稿

java.empress
java.empress

スコア16

title CHANGED
@@ -1,1 +1,1 @@
1
- 複数のテーブルを結合してデータを取得したい(php、mysql)
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
- name
40
+ pro_name
23
- subname
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
- from
77
+ FROM
50
78
  dat_sales
51
- inner join
79
+ INNER JOIN
52
- dat_sales_product
80
+ dat_sales_product
53
- on
81
+ ON
54
82
  dat_sales.code = dat_sales_product.code_sales
55
- inner join
83
+ INNER JOIN
56
84
  mst_product
57
- on
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
  宜しくお願い致します。