웹에플리케이션 만들기 – PHP 실습 1

자, 지금부터 PHP 실습을 시작하겠는데요 우리가 이전에 PHP 문법을 배웠죠 자, 그것을 바탕으로 이제 PHP로 PHP 다운 애플리케이션을 만들어 볼겁니다 자, 우선 복습을 좀 해보죠 어떻게 기술이 상호작용하는지를 다시 한번리뷰를 해보죠 웹브라우져, 웹서버, PHP가 있다고 했을때 웹브라우져에 누군가가 http://a

com/aphp 라고 입력하고 엔터를 땅 치면 웹브라우져는 acom 에 해당되는 웹서버를 찾아가서 aphp를 내놓으라고 합니다 자, 그러면 웹서버는 a

php가 자신이 처리할 수 없는 데이터라는 것을 알고 PHP를 처리 할 수 있는 PHP 엔진에게 위임해요 자, 그럼 PHP 엔진은 aphp 파일을 읽어서 거기에 적혀 있는 php 코드를 해석 한 다음에 그 결과를 웹서버에게 돌려줍니다 그럼 웹 서버는 그 결과를 웹브라우져에게 다시 중개해주는 과정을 통해서 이렇게 하나의 사이클이 흘러가게 되는거죠 자, 이번 시간에 우리가 할 것은 무엇이냐면 이 단계에서, 방금 우리가 살펴본 단계에서 조금 더 복잡하게, 이렇게 처리가 될 겁니다 웹브라우져, 웹서버,PHP, 그리고 파일이 있어요 그리고 저 파일에는 정보가 담겨 있습니다 (우리가) HTML 페이지 안에 HTML 코드도 있고 그 안에는 실재 내용이라고 할 수 있는 자바스크립트가 어떻고 변수가 어떻고 뭐 이런 내용들이 또 들어 있죠 바로 그 실재 내용이 정보일건데요 그 정보들을 우리가 파일에다가 저장을 하는거에요

이제 그러면 웹브라우져가 웹서버에게 요청하고 웹서버가 PHP에게 요청하면 PHP는 우리가 작성한 그 코드에 파일에 있는 내용을 읽어오라는 것이 적혀 있을 거거든요 그럼 그 파일을 읽어서 그 파일의 정보를 결합한 다음에 그것을 웹서버에게 돌려주고 웹서버는 웹브라우져에게 보내주게 됩니다 자, 이 과정은 이 그림만으로는 설명하기 어렵기 때문에 실제로 코드를 보시면 무슨 얘기인지 금방 이해하실 수 있는 얘기에요 자, 그래서 우리가 서버측에 있는 PHP를 다루기 전까지 웹사이트를 만든다 그러면 이렇게 웹사이트를 만들게 됩니다 보시는 것처럼 웹브라우져가 있고요 이 웹브라우져를 통해서 acom/indexhtml a

com/page_htmlhtml 이런 식으로 주소를 입력하면 그 주소에 해당되는 html 파일을 가져오는 그런 관계였습니다 그래서 만약에 페이지가 지금 보시는 것처럼 4개의 페이지가 있다면 4개의 실재 파일이 존재하는 방식으로 웹사이트를 구축했다 라는 거에요 그렇다보니까 어떤 문제가 생기냐면 만약에 html 의 코드를 변경해야 된다면 코드안에 ol 로 썼던 코드를 ul 로 바꾼다던지 h1을 h2로 바꾼다던지 또는 버튼을 추가한다던지 이런 식의 웹페이지의 변화가 필요해 지면 결국에는 각각의 페이지마다 그 내용을 하나씩 하나씩 다 수정해 줘야되는 그런 문제가 있었다는 것이죠 다시 말해서 중복이 존재했다 라는 겁니다 자, 이제 우리가 할 건 뭐냐면 이 중복을 제거해서 html 정보는 하나의 파일에 담으려고 하는 거에요 그러기 위해서는 html과 정보를 다시 분리해서 그 정보는 텍스트 파일에 담고 html 파일은 indexphp 라는 단 하나의 파일에 담는 겁니다

그러면 사용자가 웹브라우져에 이렇게 acom/indexphp?id=1 이라고 입력하고 엔터를 땅 치면 여기 있는 이 indexphp가 사용자가 입력한 이 id 값 1을 보고 이 1에 해당되는 1txt 파일에 있는 내용을 가지고 와서 가지고 와서 그 결과를 만든 다음에 그것을 웹브라우져에게 돌려주게 된다

라는 겁니다 이 과정 역시도 지금으로선 추상적으로 느껴지실수 밖에 없지만 코드를 보시면 이해하실 수 있을 거에요 지금 보시는 것처럼 우리가 만든 웹 애플리케이션인데요 자, 클릭하면 그것에 해당되는 정보들이 이렇게 화면에 보이고 있어요 자, 그런데 구조가 조금 특이합니다 여기 제가 임시로 만들어 놓은 디렉토리에 php 라는 디렉터리 안에 이 파일들을 보시면 자, 우리가 접속하는 접속할 때 사용하는 웹페이지는 indexphp 에요 다른데로 이동해도 indexphp 라는걸 볼수가 있죠 바로 이 index

php 가 여기에 있는 이것이고요 그리고 이 indexphp 안에는 실재로 정보가 들어가 있지 않고 실재 정보는 listtxt 에 들어 있고 그리고 각각의 1,2,3txt 안에 들어가 있습니다 자, 여기 보시는 것처럼 이것이 index

php 파일인데요 indexphp 에서 글 목록이 표시되는 nav 밑에 있는 여기에 php 코드가 있는데요 이 php 코드는 바로 여기에 있는 listtxt 에 있는 내용을 내용이 여기에 위치하게 됩니다 php로 인해서 그리고 사용자가 요청한 정보가 무엇이냐에 따라서 사용자가 요청한 정보가 무엇이냐에 따라서 1txt, 2

txt, 3txt 가 이중의 하나가 php에 의해서 프로그래밍적으로 읽혀서 바로 이 위치에 출력되게 되는 거에요 그래서 하나의 하나의 php 안에 이렇게 html 코드들이 이렇게 이렇게 여기에 모여있고 그리고 정보들은 각각의 텍스트 파일에 텍스트 파일로 분리되어 있는 상태입니다 즉, 정보로부터 여기 있는 것들이 정보죠 정보로부터 여기 있는 각각의 html 들을 html 은 중복이 되기 때문에 그 중복을 제거한거라고 할 수 있습니다 정보로부터 html 을 끄집어 내서 정보가 좀 더 정보만으로 이루어져 있는 파일들을 만들어 낸 거라고 할 수 있어요 자, 그런데 우리가 지금 하고 있는 텍스트에다가 정보를 저장하는 이 방식은 과도기적인 방법이에요 좀 더 좋은 방법이 있는데 궁극적으로 우리가 하려는 것은 이것이 아니고 바로 이것입니다 데이터베이스 라는 것을 사용을 해서 저 데이터베이스라고 하는 소프트웨어에 정보를 저장하고 그리고 사용자가 어떤 정보를 요청하면 저 indexphp 가 데이터베이스에 있는 정보를 가지고 와서 사용자에게 보여주는 이런 흐름이 우리가 최종적으로 이해해야 될 전체적인 모습이고 근대적인 웹 애플리케이션이라고 한다면 기본적으로 이런 구성을 가지고 있습니다 자, 그래서 저기에 있는 저 데이터베이스는 말씀 드린 것처럼 그냥 하나의 소프트웨어 입니다 그런데 이 소프트웨어가 하는 역할은 데이터를 아주 체계적으로 관리하고 많은 데이터를 효과적으로 처리하고 또, 뭐랄까요 보안성이 높기 때문에 데이터를 안전하고 보관 할 수 있는 전용 소프트웨어에요 그래서 여러분이 파일에다가 데이터를 저장하는 것도 방법이지만 데이터베이스에 데이터로 저장하면 여러가지 장점들이 생깁니다

바로 그 장점 때문에 실재로 데이터는 데이터베이스에 저장하게 되요 자, 이 관계 역시도 지금으로서는 이해가 잘 안갈거니까 우리가 코드를 보면서 공부를 해보고 나중에 이 화면을 다시 한번 우리가 볼 기회가 있으면 살펴 보겠습니다 그럼 그때는 지금 보이는 것과는 다른 느낌으로 이 그림을 보실 수 있을거에요