47
PHP 제 5차시 한국디지털미디어고등학교 13기 웹 프로그래밍과 정욱재 정보는 어떻게 관리되어질까?

현대고등학교 PHP 강의 - 5차시 (설리번 프로젝트)

  • Upload
    -

  • View
    289

  • Download
    3

Embed Size (px)

Citation preview

PHP

제 5차시

한국디지털미디어고등학교13기 웹 프로그래밍과 정욱재

정보는 어떻게 관리되어질까?

데이터베이스

데이터베이스

정보저장이 불가능하면 당연히 얕은 수준의 서비스밖에 만들지 못한다.

정보저장이 불가능하면 계정조차 생성이 불가능하다.

그렇다면 그 정보들을 저장해야하는데, 그러한 정보들은 어디에 저장되어지고, 어떻게 저장할까?

데이터베이스

데이터베이스 : 여러 사람들이 공유하고 사용할 목적으로 통합 관리되는 정보의 집합

데이터베이스

정보 1 데이터

데이터베이스

정보 1

정보 2

정보 3

정보 4

정보 5

규칙 1

정보 1

정보 2

정보 3

정보 4

정보 5

규칙 2

데이터베이스

OS, 게임과 더불어 정말 크고 체계적인 소프트웨어로 꼽히는 DB

그만큼 여러가지 DB가 있고, 여러가지 옵션이 있다.

크게는 Nosql 방식과 RDBMS 방식.

DB를 전문적으로 팔 것이 아니면 상세히 알아둘 필요는 없다.

데이터베이스

RDBMS NoSQL

관계지향/엄격한 데이터 구조 고정되지 않은 정보/대용량의 정보

데이터베이스

RDBMS NoSQL

ex> Mysql, MsSQL ex> MongoDB

데이터베이스

어려운 말은 넘어가고

우리는 RDBMS 종류의 Mysql을 사용한다.

데이터베이스

모든 DB 관련 개발자가 공통적으로 처음에 배우는 DBMS

SQL 언어를 잘 배울 수 있는 DBMS

데이터베이스

테이블/필드/레코드/스키마/DB

데이터베이스

테이블/필드/레코드/스키마/DB

데이터베이스

테이블/필드/레코드/스키마/DB

SQL 언어 실습

SQL 언어 실습

http://qov.me/phpmyadmin/ 접속

SQL 언어 실습

ID : testForHyundai

PW: testPasswordForHyundai

SQL 언어 실습

수업보면서 자유롭게 실습!

SQL 언어 실습

다른 사람에게 폐는 안끼치면서

SQL 언어 실습

보통 phpmyadmin 에서 전부 얻을 수 있다.

하지만 php 코드 내부에서 바로 쓸 수 있게 하기 위해서 일부 문법을 알아두어야 한다.

SQL 언어 실습

SELECT

SQL 언어 실습

select [destinct] 테이블명 {, 테이블명} * from 필드명 {. 필드명} * [where 검색조건]

[order by 필드명 [asc or desc] {, 필드명 [asc or desc]} *] [group by 필드명 {, 필드명} *] [having 검색조건] ;

SQL 언어 실습

어렵다!

SQL 언어 실습

예제로 알아보자

SELECT * FROM `database1`;

database1 이란 테이블에서 모든 정보를 가져온다.

SQL 언어 실습

예제로 알아보자

SELECT name FROM `table1`;

table1 이란 테이블에서 이름만 가져온다.

SQL 언어 실습

예제로 알아보자

SELECT name FROM `table1` where level=3;

table1 이란 테이블에서 레벨이 3인 데이터의 이름만 가져온다.

SQL 언어 실습

예제로 알아보자

SELECT name FROM `table1` where level=3;

table1 이란 테이블에서 레벨이 3인 데이터의 이름만 가져온다.

* = 뿐만이 아니라 like(비슷한거) in (a,b) a, b 중 하나 등등 여러가지가 있다.

SQL 언어 실습

예제로 알아보자

이 정도면 충분히 쓸 수 있다.

SQL 언어 실습

INSERT

SQL 언어 실습

insert into table values (value1, value2, …)

SQL 언어 실습

insert into table(column1, column1, …) values (value1, value2, …)

SQL 언어 실습

역시 한번에 보기 어렵다!

SQL 언어 실습

예제로 알아보자

INSERT into Member (userName, userId, userPw)VALUES (‘정욱재’, ‘JeongId’, ‘JeongPw’);

Member란 테이블에 INSERT 한다.

SQL 언어 실습

DELETE

SQL 언어 실습

DELETE from 테이블명 [WHERE 검색조건] ;

SQL 언어 실습

역시 예제가 필요하다.

SQL 언어 실습

예제로 알아보자

DELETE from Member WHERE username=‘정욱재’;

Member라는 테이블에서 이름이 정욱재인 데이터를 삭제한다.

SQL 언어 실습

UPDATE

SQL 언어 실습

UPDATE table_name SET column1=value1, comlumn2=value2

[WHERE conditions…]

SQL 언어 실습

예제!

SQL 언어 실습

예제로 알아보자

UPDATE Member SET userPw=‘JeongPw2’ WHERE username=‘정욱재’;

Member에서 정욱재라는 이름을 가진 데이터의 비밀번호를 JeongPw2로 변경한다.

SQL 언어 실습

PHP 에서

SQL 언어 실습

Mysqli 라는 객체지향적 인터페이스 이용

SQL 언어 실습

사용법

SQL 언어 실습

<?php$host = 'example.com';$user = 'username';$password = 'password';$dbname = 'dbname';

$conn = mysqli_connect($host, $user, $password, $dbname);

if (mysqli_connect_errno($conn)) {echo "MySQL Connection Error : " . mysqli_connect_error();

} else {$table = 'DB TABLE NAME THAT YOU WANT TO QUERY';$check_query = "SELECT * from ".$table." WHERE 1;";

$result = mysqli_query($conn, $check_query);

if($result->num_rows > 0) {while ($row = mysqli_fetch_assoc($result)) {

$id = $row['id']."\t";$name = $row['name']."\t";$news .= $row['news'];

}}

mysqli_free_result($result);$conn->close();

}?>

SQL 언어 실습

<?php$host = 'example.com';$user = 'username';$password = 'password';$dbname = 'dbname';

$conn = mysqli_connect($host, $user, $password, $dbname);

if (mysqli_connect_errno($conn)) {echo "MySQL Connection Error : " . mysqli_connect_error();

} else {$table = 'DB TABLE NAME THAT YOU WANT TO QUERY';$insert_query = “INSERT into “.$table.” (some columns…) VALUES (some values…)“;

if(mysqli_query($conn, $insert_query)) { echo “insert success”; } else { echo “insert failed”; }

$conn->close();}?>

SQL 언어 실습

<?php$host = 'example.com';$user = 'username';$password = 'password';$dbname = 'dbname';

$conn = mysqli_connect($host, $user, $password, $dbname);

if (mysqli_connect_errno($conn)) {echo "MySQL Connection Error : " . mysqli_connect_error();

} else {$table = 'DB TABLE NAME THAT YOU WANT TO QUERY';$delete_query = “DELETE from “.$table.” WHERE conditions…;“;

if(mysqli_query($conn, $delete_query)) { echo “insert success”; } else { echo “insert failed”; }

$conn->close();}?>

SQL 언어 실습

<?php$host = 'example.com';$user = 'username';$password = 'password';$dbname = 'dbname';

$conn = mysqli_connect($host, $user, $password, $dbname);

if (mysqli_connect_errno($conn)) {echo "MySQL Connection Error : " . mysqli_connect_error();

} else {$table = 'DB TABLE NAME THAT YOU WANT TO QUERY';$delete_query = “UPDATE “.$table.” SET col=val WHERE conditions…“;

if(mysqli_query($conn, $delete_query)) { echo “insert success”; } else { echo “insert failed”; }

$conn->close();}?>