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

質問編集履歴

3

文言の修正

2020/06/24 12:16

投稿

hj_petricall
hj_petricall

スコア2

title CHANGED
File without changes
body CHANGED
@@ -11,6 +11,8 @@
11
11
 
12
12
  ・ファイルはすべて同じフォルダにある
13
13
 
14
+ ・エラー時に入力した値は保持する
15
+
14
16
  ・赤字はcssを用意(これはわかるので大丈夫)
15
17
 
16
18
 

2

add.php の記載

2020/06/24 12:16

投稿

hj_petricall
hj_petricall

スコア2

title CHANGED
File without changes
body CHANGED
@@ -18,7 +18,7 @@
18
18
  ・ブートストラップはまだシートを当てただけで実装はしてないです。
19
19
  ・赤字は別にCSSを作成します
20
20
 
21
- ### 該当のソースコード
21
+ ### form.php
22
22
 
23
23
  ```PHP
24
24
 
@@ -151,6 +151,53 @@
151
151
  </html>
152
152
  ```
153
153
 
154
+ ###add.php
155
+ ```PHP
156
+ <?php
157
+
158
+ $employee_num = (int)$_POST['employee_num'];
159
+ $employee_name = $_POST['employee_name'];
160
+ $sexual = (int)$_POST['sexual'];
161
+ $department = (int) $_POST['department'];
162
+ $year = $_POST['year'];
163
+ $month = $_POST['month'];
164
+ $day = $_POST['day'];
165
+ $select_month = sprintf('%02d', $month);
166
+ $select_day = sprintf('%02d', $day);
167
+ $total = $year.$select_month.$select_day;
168
+ $birthday = date("Y-m-d",strtotime($total));
169
+ $phone_num = $_POST['phone_num'];
170
+ $street = $_POST['street'];
171
+
172
+
173
+ require_once '\MAMP\db_config.php';
174
+ try
175
+ {
176
+ // DB接続
177
+ $dbh = new PDO('mysql:host=localhost;dbname=employee_db;charset=utf8', $user, $pass);
178
+ $dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
179
+ $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
180
+ $sql = "INSERT INTO employee (employee_num, employee_name, sexual, department, birthday, phone_num, street) VALUES (?, ?, ?, ?, ?, ?, ?)";
181
+ $stmt = $dbh->prepare($sql);
182
+ $stmt->bindValue(1, $employee_num, PDO::PARAM_INT);
183
+ $stmt->bindValue(2, $employee_name, PDO::PARAM_STR);
184
+ $stmt->bindValue(3, $sexual, PDO::PARAM_INT);
185
+ $stmt->bindValue(4, $department, PDO::PARAM_INT);
186
+ $stmt->bindValue(5, $birthday, PDO::PARAM_STR);
187
+ $stmt->bindValue(6, $phone_num, PDO::PARAM_STR);
188
+ $stmt->bindValue(7, $street, PDO::PARAM_STR);
189
+ $stmt->execute();
190
+ $dbh = null;
191
+
192
+ echo "社員の登録が完了しました。<br>";
193
+ echo "<a href='index.php'>トップページへ戻る</a>";
194
+ }
195
+ catch(Exception $e)
196
+ {
197
+ echo "エラー発生: " . htmlspecialchars($e->getMessage(), ENT_QUOTES, 'UTF-8') . "<br>";
198
+ die();
199
+ }
200
+ ```
154
201
  ### 試したこと
155
202
 
156
203
  登録ボタンが押されたとき、$errorに格納されていればforeachで格納されているメッセージを吐き出すというところまでの理解まではできているのですが、実装の部分でつまっています。

1

補足の追加

2020/06/24 12:05

投稿

hj_petricall
hj_petricall

スコア2

title CHANGED
File without changes
body CHANGED
@@ -13,6 +13,11 @@
13
13
 
14
14
  ・赤字はcssを用意(これはわかるので大丈夫)
15
15
 
16
+
17
+ 補足
18
+ ・ブートストラップはまだシートを当てただけで実装はしてないです。
19
+ ・赤字は別にCSSを作成します
20
+
16
21
  ### 該当のソースコード
17
22
 
18
23
  ```PHP