관리 메뉴

FU11M00N

[ PHP, MYSQL ] php & mysql insert문 본문

SUA 정보보안/php&mysql

[ PHP, MYSQL ] php & mysql insert문

호IT 2021. 2. 14. 09:57

그림 출처 :https://opentutorials.org/course/3167

 

 

생활코딩의 이고잉 님의 강의를 기반으로 개인 공부용으로 정리한 포스팅입니다.

 

 

 


 

 

- 데이터베이스,테이블 생성

create database FU11_M00N;
use FU11_M00N;

우선 mysql에 접속하여 데이터베이스를 만들어줍니다.

현재 저는 "FU11_M00N" 이라는 데이터베이스를 만들었습니다.

CREATE TABLE topic (
    -> id int(11) NOT NULL AUTO_INCREMENT,
    -> title varchar(45) NOT NULL,
    -> description text,
    -> created datetime NOT NULL,
    -> PRIMARY KEY(id)
    -> ) ENGINE=InnoDB;

 

그 후 topic이라는 table을 생성한후 각각의 값들은 위와같이 설정해주었습니다.

성공적으로 database와 table 를 생성했습니다.

 

 

- php & mysql insert 연동

 

<?php
$conn = mysqli_connect("localhost", "ID", "PASSWORD", "DATABASE_NAME");
mysqli_query($conn, "
INSERT INTO topic (
title,
description,
created
) VALUES (
'fu11m00n',
'my name is~~',
NOW()
)");
?>

insert.php

 

 

mysqli_connect("localhost", "ID", "PASSWORD", "DATABASE_NAME"); 양식에맞게 값을 넣어줍니다.

 

그 후 

 

insert.php를 실행시키면 값이 정상적으로 들어갔습니다.

 

 

- 사용자 값으로 DB에 값넣기

<!doctype html>
<html>
  <head>
    <meta charset="utf-8">
    <title>WEB</title>
  </head>
  <body>
    <h1>WEB</h1>
    <ol>
      <li>HTML</li>
    </ol>
    <form action="process_create.php" method="POST">
      <p><input type="text" name="title" placeholder="title"></p>
      <p><textarea name="description" placeholder="description"></textarea></p>
      <p><input type="submit"></p>
    </form>
  </body>
</html>

create.php

create.php

 

<?php
$conn = mysqli_connect(
  'localhost',
  'ID',
  'PASSWORD',
  'DB이름');
$sql = "
  INSERT INTO topic
    (title, description, created)
    VALUES(
        '{$_POST['title']}',
        '{$_POST['description']}',
        NOW()
    )
";
$result = mysqli_query($conn, $sql);
if($result === false){
  echo '저장하는 과정에서 문제가 생겼습니다. 관리자에게 문의해주세요';
  error_log(mysqli_error($conn));
} else {
  echo '성공했습니다. <a href="index.php">돌아가기</a>';
}
?>

process_create.php

process_create.php

 

 

 

성공적으로 값이 들어갔습니다.

 

 

 

 

 

SUA 정보보안 멘토링에 참여하고 있습니다.

 

 

 

Comments