월루를 꿈꾸는 대학생
PHP 기초 - get , post 본문
전송방식 GET . POST
- 사용자 입력을 받아 데이터베이스에 전송
- 가장 기초적으로 사용할 수 있는 것이 form을 사용해서 사용자의 입력을 받음
- 사용자 입력을 받은 FORM 태그 안의 내용들이 ACTION에 있는 경로로 보내짐 이떄 보내는 방식 METHOD에 따라 달라짐
- label과 input을 id로 연결시켜줌 연결시켜줘야 input으로 넣을 때 label이 반응
- 데이터 베이스에서 사용자가 입력한 데이터가 들어갈 필드명이 필요 = name 태그
request.php
- form 태그에서 method 방식으로 넘긴 데이터를 받음
- 최상위 슈퍼 글로벌 배열 GET 혹은 POST에서 호출 가능
- MTHOD 에서 넘어온 어떤 데이터든 NAME에서 지정한 이름 넣어주면 값 출력 가능
<?php
$title='login';
include_once('inc/header.php');
?>
<form action="./request.php" method="post">
<p>
<label for="userName">Name</label>
<!--label과 input을 id로 연결시켜줌 -->
<!--데이터베이스에서 사용자가 입력한 데이터가 들어갈 필드명이 필요 name-->
<input type="text" id="userName" name="username">
</p>
<p>
<label for="userEmail">Email</label>
<input type="email" id="userEmail" name="useremail">
</p>
<p><input type="submit" value="로그인"></p>
</form>
<?php
include('inc/footer.php');
?>
<?php
$title='request';
include_once('inc/header.php');
?>
<!--form에서 받은 데이터를 간단하게 출력하기 -->
<?php
//최상위 슈퍼글로벌 배열 get 조회가능
//get으로 넘겨온 어떤 데이터든
//input의 name에 지정한 이름을 넣어준다
$name=$_POST['username'];
$email=$_POST['useremail'];
echo $name."님이 입력한 이메일은". $email."입니다.";
?>
<?php
include('inc/footer.php');
?>
get 방식
http://localhost/php/request.php?username=kikai&useremail=kikai%40test.com
- ? 다음 사용자가 입력한 이름과 이메일이 그대로 노출됨
- 그대로 노출되는 방식
- 보내는 데이터가 그대로 캐쉬에 저장
- 주소 표시줄에 무한대로 내용을 넣을 수 없어서 문자열 길이에 제한이 있음
- 민감한 비밀번호나 이메일이 그대로 노출되는 취약점이 있음
http://localhost/php/request.php?username=kikai&useremail=kikai%40test.com
<?php
$title='login';
include_once('inc/header.php');
?>
<form action="./request.php" method="get">
<p>
<label for="userName">Name</label>
<input type="text" id="userName" name="username">
</p>
<p>
<label for="userEmail">Email</label>
<input type="email" id="userEmail" name="useremail">
</p>
<p><input type="submit" value="로그인"></p>
</form>
<?php
include('inc/footer.php');
?>
post방식
- method=post / $_POST[] 만 바꿔주면 OK
- 주소표시줄에 데이터가 노출되지 않음
- 데이터를 별도로 첨부해서 전달
- 브라우저 캐쉬및 히스토리에 남지 않음
- 내부적으로 암호화해서 넘어가서 문자열 길이 제한도 없고 보안성이 좋다
'Programing > PHP' 카테고리의 다른 글
PHP기초 - 쿠키 , 세션 (0) | 2022.02.14 |
---|---|
PHP 기초 - GET , 유효성 검사 , FILTER-INPUT (0) | 2022.02.14 |
PHP 기초 - include , require (0) | 2022.02.14 |
PHP 지역 변수 , 전역 변수, 정적 변수 (0) | 2022.02.10 |
PHP 함수 (0) | 2022.02.10 |