質問編集履歴
3
文言の修正
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 の記載
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
補足の追加
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
|