[PHP 7] MySQL #00 - (2) 테이블 생성하기

김와앙·2023년 10월 12일

PHP 7

목록 보기
5/20

mysql 과 phpmyadmin 셋팅 후 점검하기

<?php
	$connect = mysqli_connect("localhost","DBname","password","user_name")
    if(mysqli_connect_error()){
    	"mysql 접속 중 오류가 발생했습니다." //연결 안될 시 
        }
    print_r($connect)
  • mysqli_connect() : 연결 확인하게 해주는 함수.

  • 정상적으로 연결이 된 경우, mysql 객체 배열이 화면에 뜬다.

  • 연결이 안되는 경우엔 비밀번호, 사용자이름이나 DB 이름 제대로 확인할 것.

  • 오류의 원인을 찾고 싶다면, echo mysqli_connect_error(); 로 출력해주면 오류와 함꼐 원인이 화면에 출력된다.

📍테이블 생성하기

  • 원하는 DB 안에 원하는 테이블명과 원하는 칼럼 수로 테이블을 생성한다.
  • a,b,c,d 의 이름을 가진 데이터테이블을 korea DB 안에 생성하였다. (칼럼 = 4 )

각 칼럼에 데이터 삽입하기

  • 삽입 - 각 열마다 원하는 값을 넣는다. ex) (1,2,3,4) , (12,34,45,56) ..
  • 보기 - 넣어진 데이터들의 횟수에 따라 행에 순서대로 추가된 걸 볼 수 있다.

📍SQL 문법 사용하기
: mysql이 알아먹는 언어, mysql의 어떤 것을 화면에 출력하고자 할 때 사용함.
: mysql에 저장한 memo 테이블 값들을 화면에 출력하고자 함.

	$query = "select * from memo"; // (1)
    
    $result = mysqli_query($connect,$query); //(2)
    
    print_r($result); //(3)

(1) 쿼리에 mysql문 을 넣어주는 기본 작업이다. 이로써 변수 query 에는 sql문이 들어가게 된다.

(2) query 를 실제로 mysql 에 전달해줌. mysql에서는 memo를 출력하게된다.
그리고 변수 result에 그 값을 받아온다. (출력을 위해)

(3) 받아온 값 출력

[field_count] = 4 ( a,b,c,d)
[num_rows] = 데이터 저장된 두 줄을 가져왔다.

는 뜻.

📍실제 테이블 안의 자료를 배열로 전환하여 출력하기

	$a = mysqli_fetch_assoc($result);
    
    print_r($a);

✓출력 결과

  • 테이블의 각 자료가 출력된다.
    $a = mysqli_fetch_assoc($result);

    // print_r($a);

    echo $a['a']; 
    echo $a['b'];
    echo $a['c'];
    echo $a['d'];

    echo "<hr>"; //가로 줄 출력


    $a = mysqli_fetch_assoc($result);
    echo $a['a']; 
    echo $a['b'];
    echo $a['c'];
    echo $a['d'];
  • mysqli_fetch_assoc()가 한번 더 사용되면, 다음 행으로 넘어간다.
  • 각 배열 인덱스 이름으로 접근하여 하나씩 출력도 가능하다.

✓출력 결과

✏️ 여러개의 데이터가 있을 때에는 while문을 사용하여 한번에 출력가능하다.

while($a=mysqli_fetch_assoc($result)){ 
	echo $a['a']; 
    echo $a['b'];
    echo $a['c'];
    echo $a['d'];
} //mysqli_fetch_array 도 동일하게 사용 가능 (참조)

데이터를 테이블 형태로 나누어서 출력하고 싶어요!

 <table border="1">

<?php

    while($a=mysqli_fetch_assoc($result)){

        echo "<tr>";

        echo "<td>";
        echo $a['a']; 
        echo "</td>";
        echo "<td>";
        echo $a['b'];
        echo "</td>";
        echo "<td>";
        echo $a['c'];
        echo "</td>";
        echo "<td>";
        echo $a['d'];
        echo "</td>";
       
        echo "</tr>";

    }

    ?>

   </table>
  • table 태그를 사용하여 감싸주면 된다. (html과 동일)
  • html 영역과 php 영역은 구분 하는 것이 규칙!
profile
greedy college ssu.tudent 👩‍🎓

0개의 댓글