본문 바로가기
PHP/간단한 강의

[PHP]다섯 번째 강의($_POST, $_GET)

by 황계순 2023. 2. 17.

안녕하세요 오늘은 post, get 방식에 대해서 말씀 드리겠습니다.

 

간단하게 생각하면 Controller에서 post 방식이냐 get 방식이냐 해서 파라미터를 받는건데요.

 

HTML과 이어서 생각한다면 form 태그에서 method 방식을 정하는 겁니다.

 

a.php, b.php 파일이 있다고 가정하고

 

a.php

<form method='post' action='./b.php'>
 <input type="text" value='test' name='textValue' />
 <input type="submit" value="전송"/>
</form>

이렇게 같은 폴더 안에 파일이 있다고 가정하고 전송을 하게 되면 post 방식으로 전송이 됩니다.

 

b.php 에서는 test라는 값을 받기위해 $_POST를 쓸겁니다.

<?php
	$a = !empty($_POST["textValue"]) ? $_POST["textValue"] : null;
	echo $a;
?>

코드를 보면 name 값이 textValue 라는게 보이시죠 ? 그 이름으로 값을 받을 수 있습니다.

위 방법으로 get 방법도 되지만 

 

get은 url에 키, 값을 넣어 보낼 수 있습니다.

 

만약 URL이 아래와 같이 나온다면

https://hwangkyesoon.tistory.com/user?id=135&title=test

 

user.php

<?php
	$id = !empty($_GET['id']) ? $_GET['id'] : null;
	$title = !empty($_GET['title']) ? $_GET['title'] : null;
	echo $id;
	echo $title;
?>

 

와 같이 받을 수 있습니다.

 

실전 예제로 들자면

 

Controller에 userFnc() 가 있다고 생각해 봅시다.

<?php
	public function userFnc(){
		$id = $this->input->post("id");
		$title = $this->input->post("title");
	}
?>

위 코드는 코드이그나이터3 기준 입니다.

 

localhost/userFnc 라는 url 이 있고 userFnc에 post 방식으로 값을 보내는겁니다.

 

API라고 생각을 하면 되겠죠 ? 이제 값을 받았다면 위 코드에서 이후에 나올 코드들은 DB에 저장시키기 전에 데이터 값이 제대로 받는지 확인하는 작업을 하고 데이터 값이 정확하다면 DB에 저장시켜주는 작업을 하면 됩니다.

 

이상으로 POST, GET 받는 방법을 설명 드렸습니다.

 

참고로 common.fucntion.php 라는 파일을 만들고 개인이 함수를 만들어 require_once나 Include 를 사용해 다른 파일에 불러들인 후 적용시키는 방법도 있습니다.

 

댓글