PHP와 MySQL

<?php?>

PHP란?

서버 측에서 실행되는 프로그래밍 언어 (PHP : Hypertext Preprocessor)

주로 HTML 코드를 프로그래밍적으로 생성

  1. 사용자가 업로드한 파일을 서버에 저장

  2. 입력된 데이터를 받아서 데이터베이스나 파일에 저장 (데이터베이스와 상호작용)

  3. 저장된 정보를 불러와서 HTML을 생성웹브라우저로 전송

<?PHP
    echo "Hello World"; //echo 출력함수
?>

Myadmin : 서버접속

ex) westsilver.dothome.co.kr/myadmin/

1. MySQL : 데이터베이스 접속

connect/connect.php 에 'MySQL' 작성
<?php
    $host = "localhost"; //*mysql - localhost로 접속!
    $user = "사용자아이디";
    $pw = "패스워드";
    $db = "사용자아이디";
    $connect = new mysqli($host, $user, $pw, $db);
    $connect -> set_charset("utf8");

    if(mysqli_connect_errno()){
        echo "Database Connect False";
    } else {
        //echo "Database Connect True";
    }
?>

$connect : 데이터 보내줄 때 사용하는 함수

PHP 문법

  • $함수명(); : 함수 호출

  • ' -> ' : 화살표 함수

2. DB(database)

MySQL을 이용한 데이터베이스 생성

2-1. 테이블 생성 → CREATE TABLE

TABLE : 데이터가 실질적으로 저장되는 저장소

테이블 데이터 입력

Description

SELECT

DB에서 데이터 선택/불러오기

INSERT

DB에 정보 입력/삽입하기

<?php
    include "../connect/connect.php";

    $sql = "CREATE TABLE studyComment (";
	$sql .= "studyCommentID int(10) unsigned NOT NULL AUTO_INCREMENT,";
	$sql .= "youName varchar(20) NOT NULL,";
	$sql .= "youText varchar(50) NOT NULL,";
	$sql .= "regTime int(15) NOT NULL,";
	$sql .= "PRIMARY KEY (studyCommentID)) CHARSET=utf8";

    $result = $connect -> query($sql);

    if( $result ){
        echo "Create Comment Complete";
    } else {
        echo "Create Comment False";
    }
?>

include : 다른 PHP파일을 불러올 때 사용

regTime : 데이터를 받은 시간 ex) 댓글 등록 시간

$SQL . : ' . ' 점은 + 추가를 의미함

2-2. DB 삽입/추가

$sql 에 변수 설정 및 저장

<?php
    //회원 가입
    if($isEmailCheck == true && $isPhoneCheck == true){
        
        $sql = "INSERT INTO studyMember(youEmail, youName, youPass, youBirth, youPhone, regTime) VALUES('$youEmail', '$youName', '$youPass', '$youBirth', '$youPhone', '$regTime')";
        $result = $connect -> query($sql);

        if($result){
            msg("회원가입을 축하합니다. 로그인 해주세요!!!");
        } else {
            msg("에러발생03 : 관리자에게 문의하세요!!");
            exit;
        }
    } else {
        msg("다시 한번 확인하고 회원가입해주세요!!");
        exit;
    }
?>

INSERT INTO 테이블명(필드명) VALUES(입력할 데이터)

2-3. DB 출력

<div class="comment-list">
<?php
    include "../connect/connect.php";

    $sql = "SELECT * FROM myComment";
    $result = $connect -> query($sql);

    //반복문을 통해 결과값 데이터 가져오기
    while($date = mysqli_fetch_array($result)){
?>
    <div>
        <p><?=$date['youText']?></p>
        <div class="icon">
            <img src="../assets/img/stu01.png" alt="조서은">
            <span><?=$date['youName']?></span>
            <span><?=date('Y-m-d H:i', $date['regTime'])?></span>
        </div>
    </div> 
<?php
    }
?>   

    <!-- <div>
        <p> 깔끔한 설명에 이해가 잘 됐어요!
            항상 잘 보고 있답니당👍</p>
        <div class="icon">
            <img src="../assets/img/stu01.png" alt="조서은">
            <span>#ksys**</span>
        </div>
    </div> -->
</div>

SELECT 필드명 FROM 테이블명

  • 전체 데이터 불러오기 : SELECT * FROM 테이블명

  • 일부 데이터 불러오기 : SELECT youName FROM 테이블

mysqli_fetch_array : mysqli_query 를 통해 얻은 $result값을 배열로 리턴해주는 함수

*fetch : 가져오다

query(); 함수 : $sql실행/데이터를 불러오는 역할

Last updated