반응형
HTML의 form을 이용하여 값을 전송하는 방식은 get/post 두 가지 방식이 있습니다.
1. $_GET
# form.php
<!doctype html>
<html lang="ko">
<head>
<meta charset="utf-8">
<title>HTML</title>
<style>
* {
font-size: 16px;
font-family: Consolas, sans-serif;
}
</style>
</head>
<body>
<form method="get" action="form-action.php">
<p><label>Color : <input type="text" name="color"></label></p>
<p><label>Sport : <input type="text" name="sport"></label></p>
<p><input type="submit" value="Submit"></p>
</form>
</body>
</html>
submit 전송버튼 클릭 시 form에 입력한 데이터들이 get 방식으로 전송됩니다.
# form-action.php
<?php
$color = $_GET['color'];
$sport = $_GET['sport'];
?>
<!doctype html>
<html lang="ko">
<head>
<meta charset="utf-8">
<title>HTML</title>
<style>
* {
font-size: 16px;
font-family: Consolas, sans-serif;
}
</style>
</head>
<body>
<p>Color is <?php echo $color ?>.</p>
<p>Sport is <?php echo $sport ?>.</p>
</body>
</html>
위 과정을 설명해보자면,
submit type의 Submit 버튼을 클릭하면 각각 name으로 지정한 color, sport 에 대해 입력한 값이 대입됩니다.
그 다음 action으로 지정한 파일인 form-action.php 파일로 입력한 값이 넘어가고 해당파일 뒤 물음표(?) 다음에 [name]=입력값1&[name]=입력값2 형식으로 전송되어집니다.
GET 방식으로 전송된 값은 $_GET으로 받습니다.
2. $_POST
# form.php
<!doctype html>
<html lang="ko">
<head>
<meta charset="utf-8">
<title>HTML</title>
<style>
* {
font-size: 16px;
font-family: Consolas, sans-serif;
}
</style>
</head>
<body>
<form method="post" action="form-action.php">
<p><label>Color : <input type="text" name="color"></label></p>
<p><label>Sport : <input type="text" name="sport"></label></p>
<p><input type="submit" value="Submit"></p>
</form>
</body>
</html>
위 GET방식에서 사용한 form.php 소스에서 method만 post로 변경했습니다.
# form-action.php
<?php
$color = $_POST['color'];
$sport = $_POST['sport'];
?>
<!doctype html>
<html lang="ko">
<head>
<meta charset="utf-8">
<title>HTML</title>
<style>
* {
font-size: 16px;
font-family: Consolas, sans-serif;
}
</style>
</head>
<body>
<p>Color is <?php echo $color ?>.</p>
<p>Sport is <?php echo $sport ?>.</p>
</body>
</html>
마찬가지로 $_GET 에서 $_POST 만 변경했습니다.
POST 방식으로 전송된 값은 $_POST로 받고, 해당 방식으로 값을 전달할 경우 URL에 아무런 흔적이 남지 않습니다.
반응형
'php' 카테고리의 다른 글
기본 문법 (0) | 2021.07.10 |
---|---|
selectbox 에서 선택한 값 출력 (0) | 2021.07.10 |
외부 파일을 포함하는 함수 [include(), include_once(), require(), require_once()] (0) | 2021.07.08 |
__FILE__ 과 __DIR__ (0) | 2021.07.07 |
PHP Mysql 레코드 가져오기 (0) | 2021.07.07 |