PHP에서 다음 페이지로 변수를 전달하는 방법

Ralfh Bryan Perez 2023년1월30일
  1. HTML 양식을 통한GETPOST 사용
  2. 세션쿠키사용
PHP에서 다음 페이지로 변수를 전달하는 방법

PHP 변수는 값과 동등한 기호 또는 이름입니다. 프로그램의 어느 부분에서나 사용할 수 있도록 값, 숫자, 문자 또는 메모리 주소와 같은 값을 저장하는 데 사용됩니다. 간단한 변수는 프로그램의 어느 부분에서나 사용할 수 있지만 HTML 형식, 세션 또는 쿠키를 통해GETPOST를 사용하여 전달되지 않는 한 외부에서 액세스 할 수 없습니다.

HTML 양식을 통한GETPOST 사용

HTML 양식은 PHP의 가장 강력한 기능 중 하나입니다. 모든 양식 요소는 양식의 ‘작업’대상에 자동으로 제공됩니다.

** POST 요청 **

<form action="nextPage.php" method="POST">
    <input type="text" name="email">
    <input type="text" name="username">
    <input type="submit" name="submit">
</form>

nextPage.php로 데이터 가져 오기

$username = isset($_POST['username']) ? $_POST['username'] : "";
$email       = isset($_POST['email']) ? $_POST['email'] : "";
echo "Username: ".$username;
echo "Email: ".$email;

** 스크립트의 샘플 출력은 다음과 같습니다. **

Username: johndoe
Email: johndoe@gmail.com

위의 예는 HTML 양식을 통해POST를 사용하여 변수를 전달하는 방법을 보여줍니다. form 요소는actionmethod 속성을 가져야합니다. action은 다음 페이지를 포함하는데,이 경우nextPage.php입니다. 방법은POST 또는GET 일 수 있습니다. 그런 다음$_POST 또는$_GET을 사용하여nextPage.php의 요소에 액세스 할 수 있습니다.

** GET 요청 **

<?php
$phpVariable = "Dog";
?>
<a href="nextPage.php?data=<?=$phpVariable?>">Bring me to nextPage</a>

이 예제는GET 변수를 만들고nextPage.php에서 접근 할 수 있습니다.

예:

echo $phpVariable = $_GET['phpVariable'];
//output: Dog

GET은$_GET을 사용하여 접근 할 수 있습니다

다른 방법은 HTML 양식에 숨겨진 요소를 추가하여 다음 페이지에 제출하는 것입니다.

예:

<form action="nextPage.php" method="POST">
    <input type="hidden" name="phpVariable" value="Dog">
    <input type="submit" name="submit">
</form>

nextPage.php

//Using POST
$phpVariable = $_POST['phpVariable'];
//Using GET
$phpVariable = $_GET['phpVariable'];
//Using GET, POST or COOKIE;
$phpVariable = $_REQUEST['phpVariable'];

GET 요청을 사용하기 위해 메소드를POST에서GET으로 변경할 수 있습니다. POSTGET은 봇 안전하지 않지만GET은 프론트 엔드를 통해 사용할 수 있기 때문에 해킹하기가 더 쉽습니다.

$_REQUESTGET,POST 또는COOKIE를 모두 수용 할 수 있습니다. 유효성 검사를 위해 자체 참조 양식에$_REQUEST를 사용하는 것이 좋습니다.

세션쿠키사용

‘세션’과 ‘쿠키’는 사용하기 쉽지만 ‘세션’은 쿠키보다 훨씬 안전하지만 완전히 안전하지는 않습니다.

세션

//page 1
$phpVariable = "Dog";
$_SESSION['animal'] = $phpVariable;

//page 2
$value = $_SESSION['animal'];

참고 :session을 사용할 때는$_SESSION 배열에 액세스하기 전에 항상 두 페이지 모두에session_start()를 추가해야합니다.

쿠키

//page 1
$phpVariable = "Dog";
$_COOKIE['animal'] = $phpVariable;

//page 2
$value = $_COOKIE['animal'];

‘쿠키’와 ‘세션’의 가장 분명한 차이점은 ‘세션’은 서버 측에 저장되고 ‘쿠키’는 클라이언트 측을 스토리지로 사용한다는 점입니다.

관련 문장 - PHP Variable