PHP에서 다음 페이지로 변수를 전달하는 방법
PHP 변수는 값과 동등한 기호 또는 이름입니다. 프로그램의 어느 부분에서나 사용할 수 있도록 값, 숫자, 문자 또는 메모리 주소와 같은 값을 저장하는 데 사용됩니다. 간단한 변수는 프로그램의 어느 부분에서나 사용할 수 있지만 HTML 형식, 세션 또는 쿠키를 통해GET
과POST
를 사용하여 전달되지 않는 한 외부에서 액세스 할 수 없습니다.
HTML 양식을 통한GET
및POST
사용
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 요소는action
과method
속성을 가져야합니다. 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
으로 변경할 수 있습니다. POST
와GET
은 봇 안전하지 않지만GET
은 프론트 엔드를 통해 사용할 수 있기 때문에 해킹하기가 더 쉽습니다.
$_REQUEST
는GET
,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'];
‘쿠키’와 ‘세션’의 가장 분명한 차이점은 ‘세션’은 서버 측에 저장되고 ‘쿠키’는 클라이언트 측을 스토리지로 사용한다는 점입니다.