PHP에서 두 웹 페이지 간 변수 전송
[ 작성자: Douya 추가 시간: 2001-5-28 22:53:08 ]
웹사이트 디자인에서 우리는 종종 사용자 로그인 방식을 사용합니다. 로그인 후 일반 웹사이트에서는 사용자에 따라 다른 페이지를 제공하고 해당 사이트의 새 웹페이지에 대한 링크를 제공합니다. 새 웹페이지를 열거나 새 웹페이지를 열면 사용자 정보가 기억된다는 사실도 알 수 있습니다. 로그인 후 사이트의 다른 웹페이지를 링크하거나 열 때 "XXX"와 같은 내용이 표시되는 것이 특히 일반적입니다. "안녕하세요" 같은 인사말은 물론 로그인 후 가변전송의 결과입니다. 개인 홈페이지를 만드는 과정에서 여러 가지 가변전송 방법을 시도해 보았는데, 이제 여러분과 함께 논의하기 위해 적어보겠습니다.
1. 가장 멍청한 방법이고, 제가 세션이나 쿠키에 아무런 접촉도 하지 않았을 때 생각해낸 방법이기도 했습니다. 이 방법은 다시 전송할 변수를 폼 형태로 전송하는 것입니다. 예를 들어 사용자가 로그인한 후 $username, $id 등과 같은 자신의 정보를 폼을 통해 다음 웹 페이지로 전송하는 것입니다. 물론 많은 경우 텍스트나 옵션 등의 상자가 더 이상 표시되지 않게 하려면 숨겨진 입력 필드를 사용하면 됩니다. 다음은 $username이 이전 페이지에서 신원 확인을 위해 이 페이지로 전송되고 이 페이지에서 확인된 변수라고 가정합니다. 이를 다음 페이지로 전달하려면 test4.php 파일을 생성하면 됩니다.
< ?$username="Zhang Xiaoming";?>
test5.php 만들기:
아파치 서버를 열고 http://127.0.0.1을 입력합니다. /test4.php in 페이지의 버튼을 클릭하면 새 웹페이지의 $username 값이 전송된 것을 확인할 수 있습니다.
물론 이 방법의 약점은 분명합니다. 또 다른 형식이 필요하며, test5.php 웹페이지를 새로 고치려면 다시 보내야 합니다. 이는 분명히 그다지 친숙하지 않습니다.
2. 세션을 사용합니다. 나중에 세션에 관한 몇몇 기사를 검색해 보니 이것이 변수를 전달하는 아주 좋은 방법이라는 생각이 들었습니다. 다음은 예시입니다.
test6.php 새 파일 만들기:
session_register("username") //세션 변수 등록
$username="Zhang Xiaoming"; //전달할 변수
echo "
가서 확인하세요"
test7.php 생성:
echo "Hello, $username, Welcome!";?> //전달된 변수 표시
이 방법을 사용하는 경우 , 주의하세요: 는 파일 앞에 배치되어야 합니다. 즉, "" 앞에는 공백을 포함하여 어떤 내용도 없어야 합니다. 여러 번 디버깅에 실패했습니다. 이유를 성공적으로 찾았습니다.
이 변수는 현재 열린 브라우저에서만 전달할 수 있습니다. 새로 열린 창에서 전달하려면 다음과 같이 하세요.
파일: test8.php
< ;
session_register("username");
$username="장샤오밍"
echo "
가서 살펴보세요"; // 현재 세션 ID 값을 다음 창에 전달합니다.
?>
파일 test7.php
echo "안녕하세요, $username님, 환영합니다!";?>
쿠키를 통해 . 예를 들어 설명하겠습니다.
test9.php 파일 만들기
echo "
가서 확인하세요";?>
test5.php 파일
test5.php 만들기: