본문 바로가기
안드로이드 웹앱 콘테츠 개발자 양성(국비지원)/DBMS

DBMS 다양한 방법 1 (php 파일로 일괄 적용 php와 DBMS 연결)

by 차누감 2020. 1. 7.

php 파일에 쿼리문도 넣고 echo 해서 웹 페이지에서도 확인해 보자.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php
 
 
    header('Content-Type:text/html; charset=utf-8');
    // DB에 저장할 데이터 [GET, POST를 이용]
    $name = 'sam';
    $msg= 'Hello world';
 
    //time-zone 설정을 안하면 시간이 다르게 나올 수 있음.[default:로마시간]
    //dothome같은 호스팅 업체는 이미 되어 있어서 실무에서는 별로 사용할 일 없음.
    // 코드로 처리할 수도 있음.
    date_default_timezone_set('Asia/Seoul'); //정해져 있는 키워드 Asia/Seoul
    $now= date('Y-m-d H:i:s');
 
    // 데이터 베이스에 저장해보기
    // php와 DBMS을 연결하기
    $conn=mysqli_connect('localhost','cw','1234','mrhi_db') or die("DB접속 실패"); //만약 connect 실패시 다잉 메시지 나오도록..
 
    //한글깨짐 방지
    mysqli_query($conn, "set names utf8");
 
    // 원하는 쿼리문(SQL) 작성
    // 1) table 생성
    $sql="create table if not exists board(no integer not null primary key auto_increment, name varchar(20) not null, msg text, date datetime)";
    // 쿼리문 실행
    mysqli_query($conn, $sql) or die("테이블 생성 실패"); //괄호 안에 긴 글을 보기 힘들어서 따로sql 변수에 저장하여 입력함
?>
 

해당 파일 위치이다.

클릭하여 php문을 실행시킨다.

실행이 잘됐다면 그냥 흰색 창으로 나올 것이다. ( html로 보여주진 않았기 때문에. )

cmd 창에서 확인해보자. 

위 사진과 같이 잘 만들어 졌다. cmd창에 입력을 안해도 php파일에서 쿼리문으로 DB 제어가 가능하다.

이제 만든 테이블에 데이터를 삽입하고, 불러와서 html로 보여주자.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<?php
 
 
    header('Content-Type:text/html; charset=utf-8');
    // DB에 저장할 데이터 [GET, POST를 이용]
    $name = 'sam';
    $msg'Hello world';
 
    //time-zone 설정을 안하면 시간이 다르게 나올 수 있음.[default:로마시간]
    //dothome같은 호스팅 업체는 이미 되어 있어서 실무에서는 별로 사용할 일 없음.
    // 코드로 처리할 수도 있음.
    date_default_timezone_set('Asia/Seoul'); //정해져 있는 키워드 Asia/Seoul
    $now= date('Y-m-d H:i:s');
 
    // 데이터 베이스에 저장해보기
    // php와 DBMS을 연결하기
    $conn=mysqli_connect('localhost','cw','1234','mrhi_db') or die("DB접속 실패"); //만약 connect 실패시 다잉 메시지 나오도록..
 
    //한글깨짐 방지
    mysqli_query($conn"set names utf8");
 
    // 원하는 쿼리문(SQL) 작성
    // 1) table 생성
    $sql="create table if not exists board(no integer not null primary key auto_increment, name varchar(20) not null, msg text, date datetime)";
    // 쿼리문 실행
    mysqli_query($conn$sql) or die("테이블 생성 실패"); //괄호 안에 긴 글을 보기 힘들어서 따로sql 변수에 저장하여 입력함
 
    // 2)데이터 삽입
    $sql = "insert into board(name, msg, date) values('$name','$msg','$now')";
    $result=mysqli_query($conn$sql); //리턴 값 true,false
    if($resultecho "insert 성공";
    else echo "insert 실패";
 
    // 3) 데이터 읽어오기
    $sql = "select * from board";
    $result=mysqli_query($conn,$sql); //리턴 값 : 찾아온 결과표(result set) , false
 
    // 결과로 나온 $result[결과표]에서 총 레코드 (record:한 줄, 행) 수 얻어오기
    $row_num= mysqli_num_rows($result);
 
    // php에서는 결과표에서 한줄씩만 데이터를 읽어올 수 있기 때문에..
    // 줄수(record 수)만큼 반복해서 읽어와야 함.
    for($i=0;$i<$row_num;$i++){
        // 현재 커서위치에서 한줄을 배열로 읽어들이기..
        $row=mysqli_fetch_array($result, MYSQLI_ASSOC); //리턴값 : 1차원 배열
 
        // 화면에 읽어온 row의 필드값들 출력
       ?>
       <!-- html영역 -->
        <h2><?php echo $row['name']?></h2>
        <p><?= $row['msg']?></p>
        <p><?= $row['date']?></p>
        <hr>
      
       <?php
    }
 
    // 데이터베이스 연결을 닫기
    mysqli_close($conn);
?>
 

php 수정한 코드를 실행하기 위해 다시 해당 파일 클릭

아래와 같이 db table 내용이 보여진다.

 

cmd 창에서 db 테이블 내용을 확인해도 동일하다.

 

댓글