PHP 마법 학교 심화 5강: 새로운 마법사 등록! ‘데이터 추가(INSERT)’와 입력 양식(Form)

안녕하세요! 가족과 함께하는 스마트 라이프입니다. 지난 시간에는 창고에서 정보를 꺼내보는 법을 배웠죠? 오늘은 드디어 우리가 직접 새로운 마법사를 데이터베이스 창고에 등록하는 ‘데이터 추가(INSERT)’ 마법을 배워보겠습니다. 이제 여러분은 방문자의 정보를 저장할 수 있는 진짜 ‘살아있는’ 웹사이트를 만들게 될 거예요!

PHP 마법 학교 심화 5강: 새로운 마법사 등록! '데이터 추가(INSERT)'와 입력 양식(Form)

1. 정보를 담는 바구니: HTML Form

데이터를 창고에 보내려면 먼저 사용자에게 정보를 받아야 해요. 이때 사용하는 것이 바로 HTML의 <form> 태그입니다. 이름표(Label)와 글상자(Input)를 이용해 마법사의 이름과 레벨을 입력받는 바구니를 만들어 봅시다.

<!-- 마법사 등록 바구니 -->
<form action="insert.php" method="POST">
  이름: <input type="text" name="w_name"><br>
  레벨: <input type="number" name="w_level"><br>
  <button type="submit">마법사 등록!</button>
</form>

2. 창고에 보물 넣기: INSERT INTO 주문

바구니에 담긴 정보를 PHP 지팡이로 휙 낚아채서 MySQL 창고 지기에게 전달해야 합니다. 이때 사용하는 SQL 주문이 바로 INSERT INTO입니다. “이 테이블의 이 칸들에, 이 값들을 넣어줘!”라고 명령하는 것이죠.

<?php
  // 1. 바구니에서 정보 꺼내기
  $name = $_POST['w_name'];
  $level = $_POST['w_level'];

  // 2. 창고에 넣을 명령서 작성하기
  $sql = "INSERT INTO Wizards (name, level) VALUES ('$name', $level)";

  // 3. 창고 지기에게 명령 전달!
  if (mysqli_query($conn, $sql)) {
    echo "신입 마법사 " . $name . "님이 성공적으로 등록되었습니다! 🎓";
  } else {
    echo "에러 발생: " . mysqli_error($conn);
  }
?>

3. 왜 ‘POST’ 방식을 쓰나요?

우리가 정보를 보낼 때 ‘GET’과 ‘POST’라는 두 가지 배달 방법이 있어요. ‘GET’은 엽서처럼 주소창에 정보가 다 보이고, ‘POST’는 편지봉투에 넣어 비밀스럽게 전달하는 방식이에요. 중요한 마법사 정보나 비밀번호는 꼭 POST 봉투에 담아 보내는 것이 보안 마법의 기본이랍니다.

PHP 마법 학교 심화 5강: 새로운 마법사 등록! '데이터 추가(INSERT)'와 입력 양식(Form)

4. 생활 속의 데이터 추가: 편의점 물건 채우기

편의점에 새로운 과자가 들어오면 직원이 바코드를 찍고 진열대에 올려두죠? 그것이 바로 INSERT 과정이에요. 아이와 함께 장난감 상자에 이름표를 붙여 정리하며 “이 로봇을 ‘장난감 테이블’에 ‘INSERT’ 하자!”라고 말해보세요. 데이터가 정리된 위치로 들어가는 개념을 몸으로 익힐 수 있습니다.

마치며: 여러분의 창고가 채워지기 시작했어요!

이제 여러분은 단순히 정보를 보여주는 마법사를 넘어, 사용자와 대화하고 정보를 기록하는 ‘기록 마법사’가 되었습니다. 등록된 마법사가 늘어날수록 여러분의 데이터베이스 성은 점점 더 거대해질 거예요. 다음 시간에는 잘못 기록된 정보를 고치는 ‘데이터 수정(UPDATE)’ 마법을 배워보겠습니다!