PHP 23강. INSERT(등록)
1. INSERT란?
INSERT는 데이터베이스에 새로운 데이터를 저장하는 SQL 명령어입니다.
예를 들어
회원가입
예약 등록
게시글 작성
문의 등록
모두 INSERT를 사용합니다.
2. CRUD
Create
↓
Read
↓
Update
↓
Delete
오늘은 Create(등록) 를 배웁니다.
3. 기본 INSERT
INSERT INTO reservation
(member, course, play_date, players)
VALUES
('커사맨', 'EAST', '2026-07-10', 4);
예약 정보 1건이 저장됩니다.
4. PHP에서 INSERT
$sql = "
INSERT INTO reservation
(member, course)
VALUES (?, ?)
";
$stmt = $pdo->prepare($sql);
$stmt->execute([
"커사맨",
"EAST"
]);
5. prepare()
$stmt =
$pdo->prepare($sql);
SQL을 미리 준비합니다.
6. execute()
$stmt->execute([
$name,
$course
]);
사용자가 입력한 값을 전달합니다.
7. Form과 연결
HTML
<form
action="reservation.php"
method="post">
<input
name="member">
<input
name="course">
<button>
예약
</button>
</form>
8. PHP
$name = $_POST["member"];
$course = $_POST["course"];
입력값을 받아 INSERT에 사용합니다.
9. 동부산CC 예제
$sql="
INSERT INTO reservation
(member, course, play_date, players)
VALUES (?, ?, ?, ?)
";
$stmt = $pdo->prepare($sql);
$stmt->execute([
$name,
$course,
$date,
$players
]);
10. 성공 여부 확인
if($stmt){
echo "예약 완료";
}
또는
if($stmt->rowCount()>0){
echo "저장 성공";
}
11. JSON 응답
header("Content-Type: application/json");
echo json_encode([
"success"=>true,
"message"=>"예약 완료"
]);
React에서는 이 JSON을 받아 성공 여부를 표시합니다.
12. React
await axios.post(
"/api/reservation.php",
form
);
Axios가 Form 데이터를 PHP로 전달합니다.
13. MySQL 구조
reservation
id
member
course
play_date
players
created_at
INSERT 시 id는 보통 자동 증가(AUTO_INCREMENT)로 생성됩니다.
14. created_at 저장
$createdAt =
date("Y-m-d H:i:s");
SQL
INSERT INTO reservation
(member, created_at)
VALUES (?, ?)
15. 입력값 검증
if(empty($name)){
exit("이름을 입력하세요.");
}
실무에서는 저장 전에 반드시 입력값을 검사합니다.
16. 예외 처리
try{
$stmt->execute([...]);
}catch(PDOException $e){
echo "저장 실패";
}
17. 동부산CC 흐름
예약 화면
↓
POST
↓
reservation.php
↓
INSERT
↓
MySQL
↓
JSON
↓
React
↓
예약 완료
18. 실습 과제
다음을 INSERT로 저장해 보세요.
예약자
코스
날짜
인원
그리고 저장 후
예약이 완료되었습니다.
를 출력해 보세요.
19. 실무 팁
✔ INSERT는 prepare() 사용
✔ execute()로 값 전달
✔ 입력값 검증 후 저장
✔ JSON으로 결과 반환
✔ created_at 자동 저장
20. 정리
INSERT는 새로운 데이터를 데이터베이스에 저장하는 SQL 명령어입니다.
PHP에서는 prepare()와 execute()를 사용하여 안전하게 데이터를 저장하며, 사용자 입력은 반드시 검증한 뒤 처리하는 것이 좋습니다.
동부산CC 프로젝트에서는 예약 등록, 회원가입, 공지 작성, 갤러리 등록 등 대부분의 등록 기능이 INSERT를 기반으로 구현됩니다.
1. INSERT란?
INSERT는 데이터베이스에 새로운 데이터를 저장하는 SQL 명령어입니다.
예를 들어
회원가입
예약 등록
게시글 작성
문의 등록
모두 INSERT를 사용합니다.
2. CRUD
Create
↓
Read
↓
Update
↓
Delete
오늘은 Create(등록) 를 배웁니다.
3. 기본 INSERT
INSERT INTO reservation
(member, course, play_date, players)
VALUES
('커사맨', 'EAST', '2026-07-10', 4);
예약 정보 1건이 저장됩니다.
4. PHP에서 INSERT
$sql = "
INSERT INTO reservation
(member, course)
VALUES (?, ?)
";
$stmt = $pdo->prepare($sql);
$stmt->execute([
"커사맨",
"EAST"
]);
5. prepare()
$stmt =
$pdo->prepare($sql);
SQL을 미리 준비합니다.
6. execute()
$stmt->execute([
$name,
$course
]);
사용자가 입력한 값을 전달합니다.
7. Form과 연결
HTML
<form
action="reservation.php"
method="post">
<input
name="member">
<input
name="course">
<button>
예약
</button>
</form>
8. PHP
$name = $_POST["member"];
$course = $_POST["course"];
입력값을 받아 INSERT에 사용합니다.
9. 동부산CC 예제
$sql="
INSERT INTO reservation
(member, course, play_date, players)
VALUES (?, ?, ?, ?)
";
$stmt = $pdo->prepare($sql);
$stmt->execute([
$name,
$course,
$date,
$players
]);
10. 성공 여부 확인
if($stmt){
echo "예약 완료";
}
또는
if($stmt->rowCount()>0){
echo "저장 성공";
}
11. JSON 응답
header("Content-Type: application/json");
echo json_encode([
"success"=>true,
"message"=>"예약 완료"
]);
React에서는 이 JSON을 받아 성공 여부를 표시합니다.
12. React
await axios.post(
"/api/reservation.php",
form
);
Axios가 Form 데이터를 PHP로 전달합니다.
13. MySQL 구조
reservation
id
member
course
play_date
players
created_at
INSERT 시 id는 보통 자동 증가(AUTO_INCREMENT)로 생성됩니다.
14. created_at 저장
$createdAt =
date("Y-m-d H:i:s");
SQL
INSERT INTO reservation
(member, created_at)
VALUES (?, ?)
15. 입력값 검증
if(empty($name)){
exit("이름을 입력하세요.");
}
실무에서는 저장 전에 반드시 입력값을 검사합니다.
16. 예외 처리
try{
$stmt->execute([...]);
}catch(PDOException $e){
echo "저장 실패";
}
17. 동부산CC 흐름
예약 화면
↓
POST
↓
reservation.php
↓
INSERT
↓
MySQL
↓
JSON
↓
React
↓
예약 완료
18. 실습 과제
다음을 INSERT로 저장해 보세요.
예약자
코스
날짜
인원
그리고 저장 후
예약이 완료되었습니다.
를 출력해 보세요.
19. 실무 팁
✔ INSERT는 prepare() 사용
✔ execute()로 값 전달
✔ 입력값 검증 후 저장
✔ JSON으로 결과 반환
✔ created_at 자동 저장
20. 정리
INSERT는 새로운 데이터를 데이터베이스에 저장하는 SQL 명령어입니다.
PHP에서는 prepare()와 execute()를 사용하여 안전하게 데이터를 저장하며, 사용자 입력은 반드시 검증한 뒤 처리하는 것이 좋습니다.
동부산CC 프로젝트에서는 예약 등록, 회원가입, 공지 작성, 갤러리 등록 등 대부분의 등록 기능이 INSERT를 기반으로 구현됩니다.
#PHP 23강. INSERT(등록)