>  기사  >  백엔드 개발  >  PHP POST 방법

PHP POST 방법

WBOY
WBOY원래의
2024-08-29 12:56:49762검색

PHP 게시 방법은 브라우저 클라이언트가 필요한 정보를 웹 서버에 보낼 수 있는 방법 중 하나입니다. 기본적으로 웹사이트에 로그인해야 하거나 메일과 상호작용해야 한다는 것은 양식을 처리한다는 의미입니다. 양식은 사용자로부터 가져온 정보를 웹 서버로 가져와 제출하는 데 사용됩니다. 이는 기본적으로 입력 상자, 라디오 버튼, 확인란 등과 같은 그래픽 사용자 인터페이스 항목이 있는 HTML 태그입니다.

무료 소프트웨어 개발 과정 시작

웹 개발, 프로그래밍 언어, 소프트웨어 테스팅 등

양식은

입력 양식 요소를 사용하여 설명된 태그 및 GUI 항목은 사용자 입력을 허용하는 조정 가능하고 동적 애플리케이션 개발을 처리할 때 사용됩니다. 양식을 사용하여 데이터베이스 정보의 기존 데이터를 변경할 수도 있습니다.

구문:

<?php
$_POST['var'];
?>

어디,

  • var은 URL의 변수 이름입니다
  • $_POST는 PHP 배열입니다

PHP POST 방법은 어떻게 작동하나요?

이 메서드는 HTTP 헤더를 통해 값을 제출하며 위 변수는 전역 범위를 가지므로 프로그램의 어느 곳에서나 얻을 수 있습니다. 이 방법은 양식 게시물 값을 URL에 표시하지 않을 때 가장 적합합니다.

일부 속성은 다음과 같습니다.

  • 전송되는 데이터의 크기에는 어떠한 제한도 두지 않습니다.
  • 데이터 전송은 HTTP 헤더를 통해 이루어지므로 보안도 이에 따라 달라집니다. 따라서 HTTPS 방식을 사용하면 보안이 안전한지 확인할 수 있습니다.
  • POST 메소드를 사용하면 ASCII 및 바이너리 데이터에 모두 액세스할 수 있습니다.
  • $_POST는 이 메소드로 전송된 모든 정보에 액세스하는 배열입니다.

PHP POST 방식 구현 예시

다음은 언급된 예시입니다.

예시 #1

코드:

<html>
<body>
<form action="Test.php" method="post">
First Name: <input type="text" name="name"><br>
Last Name: <input type="text" name="name"><br>
Mail ID: <input type="text" name="email"><br>
<input type="submit">
</form>
</body>
</html>

출력:

PHP POST 방법

설명: 이 예에서는 양식이 이름, 성, 메일 ID의 3가지 속성으로 구성된 간단한 HTML 양식 제출을 볼 수 있습니다. 사용자가 모든 정보를 입력한 후 제출 버튼을 클릭하면 입력된 데이터가 HTTP POST 방식으로 전송됩니다.

예시 #2

코드:

<?php
if (!empty($_POST))
{
// Defining an array for the list of post values for all the
// different forms on the page
$pNameArray = array('Form1', 'Form2', 'Form3');
// To search all post identifiers that fall within $_POST
$postIdArr = array();
foreach ($pNameArray as $pName)
{
if (array_key_exists($pName, $_POST))
{
$postIdArr[] = $pName;
}
}
// There should be only one post identifier at a time and hence
// only an individual form should be used for submitting at a time
// A warning statement can be used instead of the die statement as used here
if (count($postIdArr) != 1)
{
count($postIdArr) < 1 or
// validation of count
die("\Validating count here: " .
implode(" ", $postIdArr));
// The above condition is not satisfied hence there is only one post identifier
die("\Presence of unknown post");
}
// Using switch statement to execute the codes for respective forms
switch ($postIdArr[0])
{
case 'Form1':
echo "Execute actual code for Form1.";
break;
case 'Modifyform':
echo "Execute actual code for Form2.";
break;
case 'Deleteform':
echo "Execute actual code for Form3.";
break;
}
}
else // $_POST is empty.
{
// displaying that POST is not executed
echo "POST is empty";
}
?>

출력:

PHP POST 방법

설명: 이 예에서는 POST 메서드가 여러 양식에 대해 어떻게 작동하는지 확인합니다. 따라서 우리는 다양한 양식을 처리하기 위해 스위치 문을 사용하고 있으며 오류 없이 처리하려면 모든 양식이 구별되어야 합니다. 더 많은 양식을 추가해야 하는 경우 배열과 스위치 문에 항목을 작성하면 됩니다.

예시 #3

코드:

<?php
if( POST["fullname"] ||
POST["weight"] || POST["height"] ) {
if (preg_match("/[^A-Za-z'-]/",$_POST['fullname'] )) {
die ("The name given is invalid and should be alpha");
}
echo "Welcome ". $_POST['fullname']. "<br />";
echo "Welcome ". $_POST['height']. "<br />";
echo "You are ". $_POST['weight']. "weight in kgs";
exit();
}
?>
<html>
<body>
<form action = "<?php $_PHP_SELF ?>" method = "POST">
Full Name: <input type = "text" name = "fullname" />
Height: <input type = "text" name = "height" />
Weight: <input type = "text" name = "weight" />
<input type = "submit" />
</form>
</body>
</html>

출력:

PHP POST 방법

설명: 이 예의 쿼리 문자열은 POST 메서드 요청의 HTTP 메시지 본문으로 전송됩니다. 여기서는 이름, 키, 몸무게라는 3가지 속성을 지정합니다.

PHP에서 GET 방식에 비해 POST 방식의 장점

  • POST 방식은 사용자가 입력한 정보가 URL 쿼리 문자열이나 서버 로그에 표시되지 않기 때문에 GET에 비해 더 안전합니다.
  • POST 방식은 파일 업로드 등 텍스트 데이터와 바이너리 데이터를 모두 전송할 수 있어 GET 방식보다 POST 방식이 전달할 수 있는 데이터의 범위가 더 넓다. 이러한 다양한 고급 기능을 지원합니다.
  • 숫자, 문자열, 바이너리 유형 등 다양한 데이터 유형을 지원합니다.

결론

위와 같이 폼 데이터 수집은 기본적으로 PHP Post 방식을 사용합니다. 따라서 HTTP Post 방법을 사용하여 웹 서버를 통해 정보를 보냅니다. 이 정보는 주소 표시줄에 표시되지 않기 때문에 서버를 통해 민감한 데이터를 전송하는 데 자주 사용됩니다. 성능 측면에서도 몇 가지 단점이 있습니다. POST 메서드 요청은 캐시되지 않으므로 브라우저 기록에 유지되지 않습니다.

위 내용은 PHP POST 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.