TeamH4C

[빡공팟 5기] W1 ~ W3 : 초기 화면 구성 및 DB 연결

이유갬 2022. 10. 4. 01:29

초기 화면 구성


HTML + CSS 로 초기 화면 구성 완료

하다보니 초기 구상이랑 디자인이 많이 달라졌다.

Simple is Best ^_^


PHP + MYSQL 연동으로 게시판 일부 기능 구현 완료 - 쓰기, 수정, 삭제

아직 UI 가 허접하다..

기능부터 다 구현하고 디자인을 만지는 게 좋을 듯.. ㅎㅅㅎ..

 

1. use_mampstack 터미널을 이용하여 mysql 접속하기

mysql -u DB아이디명 -p

- 서버 설치하는 과정에서 입력한 비밀번호 입력하기

 

2. SHOW DATABASES;

현재 존재하는 데이터베이스들을 보여줌.

 

3. use web;

필자는 web 데이터 베이스를 사용할 것임. -> 연습용

 

4. CREATE TABLE topics ();

topics 라는 테이블을 작성함.

 

5. DESC topics;

topics 라는 테이블의 구조를 알 수 있음.

 

6. SELECT * FROM topics;

topics 테이블에 존재하는 데이터의 목록들을 볼 수 있음.

 

7. mysqli_connect()

php문으로 작성하여 mysql 과 연결할 수 있음.

$conn = mysqli_connect("localhost", "DB 계정명", "DB 비밀번호", "사용할 DB명");
//코드에 그대로 넣는 건 아주 나쁜 방법

$conn 의 변수에 mysqli_connect("서버의 IP 주소", "관리자 계정 아이디", "비밀번호", "접속할 데이터베이스") 함수의 결과를 대입함.

 

8. mysqli_query($conn, $sql)

 

데이터베이스에 실제 SQL문의 쿼리를 전송할 수 있음.

insert.php 페이지를 reload  시 계속 쿼리를 전송할 수 있음.

해당 함수의 특성은 리턴값을 false 를 받을 수 있다는 점임. 이를 이용하여 사용자에게 오류를 보여줄 수 있음.

 

- mysqli_query() 의 속성은?

public readonly int $current_field;
public readonly int $field_count;
public readonly ?array $lengths;
public readonly int|string $num_rows;
public int $type;

num_rows 는 테이블의 행의 개수를 보여줌 -> 즉 데이터들의 개수임!

 

9. mysqli_error($conn)

에러가 어디서 났는지 보여줌.

 

10. mysqli_fetch_array()

mysqli_fetch_array() 는 $result 의 결과물을 하나씩 하나씩 리턴하는 특징을 가지고 있음.

 

11. menu1.php 에서 DB 에 접속하여 게시글 목록을 불러오고 해당 제목을 클릭하면 id 값을 이용하여 해당되는 본문을 출력하는 기능을 구현함.

12. mysqli_real_escape_string()
//sql 인젝션 방지