본문 바로가기
PHP

[PHP]폼과 전송방식

by 남민섭 2022. 12. 19.
728x90
반응형

입력값에 따라서 동작 방법이 달라지거나 입력된 값을 저장/삭제/출력 할 수 있음

 

예시)

<?php
    echo $_GET["id"];
    echo $_POST["id"];
?>

 

슈퍼 글로벌변수

PHP에서 미리 정의된 전역 변수

슈퍼 글로벌 변수는 특별한 선언 없이 스크립트 내의 어디에서라도 바로 사용 가능

  • $GLOBALS
  • $_SERVER
  • $_GET
  • $_POST
  • $_FILES
  • $_COOKIE
  • $_SESION
  • $_REQUEST
  • $_ENV

$_GET  은  get으로 전송된 값을 가지고 있는 슈퍼글로벌변수

전송 받은 값에 접근 $_GET["name"], input에 name속성 필수!!!!!

 

▶ $_POST 는  post으로 전송된 값을 가지고 있는 슈퍼글로벌변수

전송 받은 값에 접근 $_POST["name"], input에 name속성 필수!!!!!

 

 


예시)

<html>
<body>
    <form method="get" action="form.php">
        id: <input type="text" name="id"/>
        password: <input type="text" name="password"/>
        <input type="submit"/>
    </form>
</body>
</html>

 

form이란 사용자가 입력한 정보를 받아서 서버로 전송하기 위한 HTML의 태그입니다.

사용자가 입력한 정보를 받는 UI를 입력 컨트롤이라함.

위의 코드 id 와 password를 입력 받는 입력컨트롤이 포함되있음

입력컨트롤에 입력된 정보는 속성 name의 값을 서버로 전송

입력한 정보를 서버로 전송하는 컨트롤은 submit버튼

버튼 클릭시 입력된 정보는 form태그의 action 속성에 지정된 URL로 전송

이 때 method에 지정된 방식에 따라서 get/post방식으로 데이터 전송

url에 데이터를 첨부해서 전송하는 방식을 GET방식

HTTP메시지의 본문에 데이터를 포함해서 전송하는 방식을 POST방식

 

localhost/복습/form.php까지는 주소,

?는 주소와 입력데이터의 구분자

id=안녕안녕&password=1234는 입력데이터

 

id=안녕안녕, password=1234은 값을 나타내고

사이에 &는 값과 값 사이의 구분

 

if 문을 사용하여 전송된 데이터 처리

예시1)

<?php
    if($_GET["id"]==="안녕안녕") {
        echo "right";
    } else {
        echo "wrong";
    }
?>

 

예시2) 아이디에 대한 필수 입력 검사 

<?php
    if(!isset($_GET["id"]) || $_POST["name"] == false) {
        $nameMsg = "이름을 선택해주세요!";
    } else {
        $name = $_POST["name"];
    }
?>
728x90
반응형

'PHP' 카테고리의 다른 글

[PHP] 비밀번호 암호화  (0) 2022.12.26
[PHP]파일과 디렉토리 제어  (0) 2022.12.22
[PHP]배열  (0) 2022.12.18
파일과 디렉토리 제어  (0) 2022.12.18
[PHP]반복문  (0) 2022.12.18

댓글