質問編集履歴

1

追加情報

2020/11/26 12:39

投稿

Mabo-san
Mabo-san

スコア7

test CHANGED
File without changes
test CHANGED
@@ -69,3 +69,157 @@
69
69
  ご教示頂けると助かります。
70
70
 
71
71
  宜しくお願い致します。
72
+
73
+
74
+
75
+
76
+
77
+ 追記:情報が足りなかったようで申し訳ございません。
78
+
79
+ 1.フォーム画面で下記事項を入力し2の画面へPOSTで送ります。
80
+
81
+ ![イメージ説明](0111b919a06c6ebcce033246fe34ebac.png)
82
+
83
+
84
+
85
+ 2.受け取ったPOSTをループにて多次元配列を作成し、画面に表示してます。
86
+
87
+  ここで使用している$transcation_dataにすべてのデータが入っているので、
88
+
89
+  次の画面に渡したいと考えています。
90
+
91
+
92
+
93
+ ![イメージ説明](c42cbbeac837ff895276a06ce38c8365.png)
94
+
95
+
96
+
97
+ ```ここに言語を入力
98
+
99
+ for($i=0; $i < 5; $i++){
100
+
101
+ if(!empty($_POST['date'.$i])){
102
+
103
+ $account_data = explode(",",$_POST['account_id'.$i]);
104
+
105
+ $account_id = $account_data[1];
106
+
107
+ $account_name = $account_data[0];
108
+
109
+
110
+
111
+ $account_sub_data = explode(",",$_POST['account_sub'.$i]);
112
+
113
+ $account_sub_id = $account_sub_data[0];
114
+
115
+ $account_sub_name = $account_sub_data[1];
116
+
117
+
118
+
119
+ $transcation_data[] = [
120
+
121
+ 'date' => $_POST['date'.$i],
122
+
123
+ 'account_id' => $account_id,
124
+
125
+ 'account_name' => $account_name,
126
+
127
+ 'account_sub_id' => $account_sub_id,
128
+
129
+ 'account_sub_name' => $account_sub_name,
130
+
131
+ 'transaction_amount' => $_POST['transaction_amount'.$i],
132
+
133
+ 'transaction_remark' => $_POST['transaction_remark'.$i]
134
+
135
+ ];
136
+
137
+ }else{
138
+
139
+ continue;
140
+
141
+ }
142
+
143
+ }
144
+
145
+ ```
146
+
147
+ formタグの中に下記を記載してPOST送信
148
+
149
+ ```ここに言語を入力
150
+
151
+ <input type="hidden" name="transcation_data" value="<?=$transcation_data?>">
152
+
153
+ ```
154
+
155
+
156
+
157
+ 3.最後はDBに登録するファイルなのですが、ここでデータが受け取れていません。
158
+
159
+
160
+
161
+ ```ここに言語を入力
162
+
163
+ $regi1 = $_POST['regi1'];//登録or更新を判断
164
+
165
+
166
+
167
+ if($_POST['transaction_data']){
168
+
169
+ $transaction_data = $_POST['transaction_data'];
170
+
171
+ }
172
+
173
+
174
+
175
+ if($_POST['transaction_id']){
176
+
177
+ $transaction_id = $_POST['transaction_id'];
178
+
179
+ }//更新の場合は必要
180
+
181
+
182
+
183
+ require_once('../db/db.php');
184
+
185
+
186
+
187
+ //登録
188
+
189
+ if($regi1 == 1){
190
+
191
+
192
+
193
+ $sql = 'INSERT INTO transaction(account_id, account_sub_id, transaction_amount, transaction_remark, transaction_date, transaction_name) VALUES (?,?,?,?,?,?)';
194
+
195
+ $stmt = $db->prepare($sql);
196
+
197
+
198
+
199
+ foreach(array_filter($transcation_data) as $transcation){
200
+
201
+ $stmt->bindValue(1, $transcation, PDO::PARAM_INT);
202
+
203
+ $stmt->bindValue(2, $transcation, PDO::PARAM_INT);
204
+
205
+ $stmt->bindValue(3, $transcation, PDO::PARAM_INT);
206
+
207
+ $stmt->bindValue(4, $transcation, PDO::PARAM_STR);
208
+
209
+ $stmt->bindValue(5, $transcation, PDO::PARAM_STR);
210
+
211
+ $stmt->bindValue(6, $_SESSION["u_id"], PDO::PARAM_INT);//これのみログインからセッションを持ち回りし
212
+
213
+ $stmt->execute();
214
+
215
+ }
216
+
217
+
218
+
219
+ }
220
+
221
+ ```
222
+
223
+
224
+
225
+ 宜しくお願いします。