728x90
반응형



 GET 방식과 POST 방식



GET 방식과 POST 방식은 사용자가 서버에 요청하는 메서드 입니다




1. GET 방식




위 내용을 폼을 이용하여 GET 방식을 이용한 간단한 로그인 페이지입니다 로그인 페이지에서 로그인을 하게 되면 이전 페이지에 입력한 ID와 PW의 내용이 URL에 표시되는 것을 확인하실 수 있습니다


즉 GET 방식은 사용자가 서버에 요청한 후 서버에서 응답을 받을 때 URL 상에 정보가 담겨서 전송되게 됩니다


그러나 로그인 페이지에서 ID와 패스워드가 URL에 노출이 된다면 굉장히 위험한 보안적 이슈가 발생하게 되며, GET 방식 같은 경우에는 보안적으로 노출이 되지 않아야 되는 곳을 사용하지 않습니다


그렇다면 GET 방식은 사용해야 되는 곳이 있습니다 GET 방식으로 사용이 필요하 곳을 자유게시판 같은 곳을 예를 들어보겠습니다

자유게시판의 글을 사용자에게 접근하기 위해선 URL이 필요하며, 또한 현재 포스팅한 블로그도 URL이 필요합니다 다른 사용자가 접근을 용의하기 위한 노출이 되어도 문제가 없는 곳을 GET 방식으로 사용하게 됩니다




2. POST 방식



위 내용을 폼을 이용하여 POST 방식을 이용한 간단한 로그인 페이지입니다 로그인 페이지에서 로그인을 하게 되면 이전 페이지에 입력한 ID와 PW의 내용이 URL에 표시되는 않는 것을 확인하실 수 있습니다


즉 GET 방식은 사용자가 서버에 요청한 후 서버에서 응답을 받을 때 URL 상에 표시 되는 않는 것으로 생각하시면 됩니다.


POST 방식은 로그인, 회원가입 정보가 URL에 노출이 되지 않게 하기 위한 것을 하기 위해 사용됩니다







 GET 방식과 POST 방식의 로그분석



이번에는 GET 방식과 POST 방식을 웹로그 통해 알아보겠습니다



1. HTML 폼



1
2
3
HTML 전송
Host : 192.168.65.1
GET /in_put/get.html HTTP/1.1" 200 190 "http://server-talk.com/in_put/"


위 로그는 폼 로그인 페이지 입니다




2. GET 방식



1
2
Host : 192.168.65.1
GET /in_put/input.php?id=server&pw=talk HTTP/1.1" 200 13 "http://server-talk.com/in_put/get.html"


위 로그의 GET 방식인 것을 확인 하실수 있으며, http://server-talk.com/in_put/get.html(폼 페이지)를 통해 데이터를 전송 받아 /in_put/input.php?id=server&pw=talk(URL)의 접근 한것을 확인 할수 있습니다



3. POST 방식



1
2
Host : 192.168.65.1
POST /in_put/input.php HTTP/1.1" 200 13 "http://server-talk.com/in_put/post.html"


위 로그의 POST 방식인 것을 확인 하실수 있으며, http://server-talk.com/in_put/get.html(폼 페이지)를 통해 데이터를 전송 받아 /in_put/input.php(URL)의 접근 한것을 확인 할수 있습니다

728x90
반응형

'Web Programming > php' 카테고리의 다른 글

php if else 문  (0) 2018.08.31
php if 문  (0) 2018.08.31
php 폼 입력과 출력  (0) 2018.08.31
php.ini opcache.enable  (0) 2018.08.31
php.ini display_errors  (0) 2018.08.31
728x90
반응형




 PHP 애플리케이션의 입력과 출력




1
2
3
<?php
  echo $_GET['id'];
?>


위 코드는 $_GET[ ]는 배열(Array) 라고 하며, 배열의 대한것은 배열관련의 포스팅에서 자세히 알아보도록 하고 $_GET[ ]의 대해 알아보도록 하겠습니다




위 출력내용의 URL를 자세히 보시면 input.php?id=server로 되어 있습니다




이번에는 URL의 server 부분을 talk 로 수정한 후 다시 접속하니 변경된 URL 정보로 브라우저에 출력되는것을 확인하실 수 있습니다

즉 위 출력내용을 본다면 변경한 URL의 server, talk 부분을 입력한 값의 따라 출력내용이 다르다는 것을 확인 하실수 있습니다.

그리고 input.php 파일이 사용자가 입력한 값에 따라서 다른 출력값을 보내주는것으로 사용자와 서버가 데이터를 주고받는 애플리케이션이 된것입니다





1
2
3
<?php
  echo $_GET['id'];
?>


코드로 다시 돌아와서 $_GET[ ] 는 사용자가 입력한 정보를 받는것 영역이며, $_GET['id'] 괄호 안에 들어가는 값은 입력한 값의 이름이 된다는 것으로 볼수 있겟습니다








 PHP 애플리케이션의 폼을 이용한 데이터 입력




이번에는 폼을 이용하여 PHP 애플리케이션의 데이터를 입력해 보도록 하겠습니다


사용자가 URL의 직접 정보를 입력하는것은 많은 불편함이 있습니다 이러한 불편함을 해결하기 위해 만든것이 Form(폼) 입니다


Form(폼)이란? 사용자가 이력한 데이터를 받아 서버로 전송하는 HTML 태그이며, 사용자가 입력한 정보를 받은 후 입력받은 컨트롤에 포함되어 있는 속성값의 따라 데이터가 서버로 전송하게 됩니다



위 내용이 바로 폼입니다 이쁘지는 않지만 로그인하는데 필요한 정보는 모두 있죠? 폼의 대한 코드를 보도록 하겠습니다


File : form.html

1
2
3
4
5
6
7
8
9
<html>
<body>
  <form method="get" action="input.php">
    id : <input type="text" name="id" />
    pw : <input type="text" name="pw" />
    <input type="submit" />
  </form>
</body>
</html>



File : input.php

1
2
3
<?php
  echo $_GET['id'].' : '.$_GET['pw'];
?>


위 코드는 폼의 출력내용의 HTML 코드입니다 차근차근 알아보도록 하겠습니다

4, 5번째 줄은 id와 pw의 텍스트필드 이고 6번째 줄은 쿼리전송의 submit 버튼이며 사용자가 버튼을 클릭하게 되면 사용자가 입력한 데이터를 3번째줄의 있는 action부분의 URL를 지정하여 정보를 보내는곳을 지정하게 됩니다




위 출력내용은 id  / pw 를 입력할수 있는 텍스트필드가 있고 입력된 정보를 서버로 전송하기 위한 버튼이 있습니다



정보를 입력하고 쿼리전송을 클릭해보겠습니다




출력내용을 보시면 폼에서 입력한 정보로 URL이 변경된것을 확인하실수 있습니다





 PHP 애플리케이션의 입력값의 구분




이번에는 URL를 부분을 자세히 알아보도록 하겠습니다



1. 주소와 값의 구분자



위 내용은 브라우저를 통한 접근 URL이며, server-talk.com/in_put/input.php 는 서버의 주소가되고 id=talk&pw=talk 은 입력데이터가 되게 됩니다 서버의 주소와 입력데이터는 ?(물음표)라는 구분자를 통해 나눠지게됩니다


2. 값의 구분자



위 URL를 보시면 id와 pw라는 2개의 값 있으며, 값과 값 사이는 & 가 구분자입니다




3. 값의 이름과 값 사이의 구분자



위 URL를 보시면 id(값의 이름)와 pw(값)가 있으며, 값의 이름과 값 사이는 = 가 구분자입니다

728x90
반응형

'Web Programming > php' 카테고리의 다른 글

php if 문  (0) 2018.08.31
Get 방식 Post 방식  (0) 2018.08.31
php.ini opcache.enable  (0) 2018.08.31
php.ini display_errors  (0) 2018.08.31
Atom Editor 아톰 에디터 설치 및 설정  (0) 2018.08.30
728x90
반응형

요기~


https://blog.naver.com/samy4169

728x90
반응형

'일상탈출~!' 카테고리의 다른 글

더티 트렁크 ( Dirty Trunk in 파주 )  (0) 2021.02.20
세븐나이츠2 영웅등급표  (0) 2021.02.18
728x90
반응형

php 폴더의 php.ini 파일 편집


opcache.enable=1

1 = 켜져있음

0 = 꺼져잇음


1이면 php 가 같은시간동안 더 많은 웹페이지를 만들어낼수 있다.

하지만 php 파일 수정시 즉시 반영이 아닌 30초 ~ 1분 주기로 웹페이지에 반영되는 이슈.


개발시에는 0으로 놓아야 즉시 개발이 반영된다..

728x90
반응형

'Web Programming > php' 카테고리의 다른 글

Get 방식 Post 방식  (0) 2018.08.31
php 폼 입력과 출력  (0) 2018.08.31
php.ini display_errors  (0) 2018.08.31
Atom Editor 아톰 에디터 설치 및 설정  (0) 2018.08.30
php 변수  (0) 2018.08.30
728x90
반응형

php 설치 폴더 안의 php.ini 파일 편집.

display_errors = off -> on 으로 변경하면 오류가 표시된다.


하지만 상용 서비스시에는 off 로 해야함

개인정보등의 오류 내용이 client 에 노출될 가능성있기때문에..



728x90
반응형

'Web Programming > php' 카테고리의 다른 글

php 폼 입력과 출력  (0) 2018.08.31
php.ini opcache.enable  (0) 2018.08.31
Atom Editor 아톰 에디터 설치 및 설정  (0) 2018.08.30
php 변수  (0) 2018.08.30
php 숫자연산  (0) 2018.08.30

+ Recent posts