>  기사  >  백엔드 개발  >  PHP에서 유효성 검사

PHP에서 유효성 검사

王林
王林원래의
2024-08-29 13:08:43566검색

PHP에서 유효성 검사는 최종 사용자가 양식에 제출한 텍스트, 체크박스, 라디오 버튼 등 어떤 형태로든 다양한 필드에 입력된 정보가 올바른지 또는 HTML 코드를 사용하지 않았는지 확인하는 프로세스입니다. .

광고 이 카테고리에서 인기 있는 강좌 PHP 개발자 - 전문 분야 | 8개 코스 시리즈 | 3가지 모의고사

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

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

PHP에는 두 가지 종류의 유효성 검사가 가능합니다.

  1. 클라이언트 측 유효성 검사: 이 유형의 유효성 검사는 클라이언트 컴퓨터의 웹 브라우저에서 수행됩니다.
  2. 서버측 유효성 검사: 제출된 데이터는 서버 시스템으로 전송되어 그곳에서 유효성 검사를 수행합니다.

PHP의 유효성 검사 규칙

양식 유효성 검사에는 특정 규칙이 있으며 다음 필드에 대한 규칙은 다음과 같습니다.

  • 이름 : 공백과 문자만 포함하는 필수 항목입니다.
  • 이메일: 유효한 이메일 주소를 포함해야 하는 필수 필드이기도 합니다. 즉, [이메일 보호됨] 형식이어야 합니다.
  • 웹사이트: 선택 필드이며 제공된 경우 유효한 URL을 포함해야 합니다
  • 댓글: 선택 필드이며 긴 문장을 입력할 수 있는 여러 줄의 텍스트 입력입니다.
  • 성별 : 필수항목이며, 여성, 남성, 기타 중 하나의 성별을 선택해야 합니다.

PHP의 유효성 검사 유형

이제 이러한 필드의 다양한 유형을 검증하는 방법을 살펴보겠습니다.

1. 텍스트 필드 유효성 검사

위에서 언급한 이름, 이메일, 웹사이트, 댓글 등의 속성에는 몇 가지 텍스트 필드가 있습니다. 이에 대한 HTML 코드는 다음과 같습니다.

코드:

<blockquote>
<p>Name : <input name="name" type="text" /> <br /><br /> E-mail : <input name="email" type="text" /><br /><br /> Website: <input name="website" type="text" /><br /><br /> Comment: <textarea cols="40" name="comment" rows="5"></textarea></p>
</blockquote>

출력:

PHP에서 유효성 검사

위 프로그램에 대한 설명: 여기서는 다른 헤더 태그와 공백 태그를 사용하여 원하는 대로 이러한 속성 이름을 사용자 정의할 수 있습니다. 여기에 대한 단락 형식 옵션 중 하나를 표시했습니다.

2. 라디오 버튼 유효성 검사

라디오 버튼은 기본적으로 true 또는 false 부울 값을 갖는 버튼이며 원형 상자로 표시됩니다. 상자에 동그라미가 있으면 true를 의미하고 그 반대도 마찬가지입니다. 위에서 언급한 "성별" 속성에 대해 동일한 기능을 구현하는 HTML 코드를 확인해 보겠습니다.

코드:

Gender:<br /><br />
<input type="radio" name="gender" value="female">Female<br /><br />
<input type="radio" name="gender" value="male">Male<br /><br />
<input type="radio" name="gender" value="other">Other

출력:

PHP에서 유효성 검사

위 프로그램에 대한 설명: 이 코드를 사용하면 성별 카테고리 아래에 남성, 여성, 기타의 3가지 옵션이 표시됩니다. 사용자는 원을 클릭하여 필요한 옵션에 원을 표시할 수 있으며 옵션이 저장되고 유효성이 검사됩니다.

3. 양식 요소 유효성 검사

이 방법은 양식 제출에 필요한 모든 세부 사항을 입력한 후 마지막에 사용됩니다. 이 HTML 코드를 사용하면 제출된 양식 데이터가 "게시" 방법으로 전송됩니다. 기본적으로 양식 요소의 유효성을 검사하는 동안 지정해야 하는 두 가지 속성(작업 및 메서드)이 있습니다. 사용자가 제출할 때 양식이 깨지는 것을 방지하기 위해 특정 HTML 속성을 해당 엔터티 이름으로 변환할 수 있습니다. "작업"은 제출 시 양식 데이터가 전송되는 위치를 결정하고 "방법"은 양식 데이터가 제출되는 방식을 정의합니다.

코드:

<form method="POST"
action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">

위에서 배운 다양한 종류의 유효성 검사를 모두 결합하여 전체 유효성 검사 형식을 확인해 보겠습니다.

코드:

<!DOCTYPE HTML>
<html>
<head>
<style>
.Error {color: #FF0000;}
</style>
</head>
<body>
<?php
// we are defining variables here and setting their default values to zero
$nameError = $emailError = $genderError = $websiteError = "";
$name = $email = $gender = $comment = $website = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["name"])) {
$nameError = "Name is mandatory";
} else {
$name = test_input($_POST["name"]);
}
if (empty($_POST["email"])) {
$emailError = "Email is mandatory";
} else {
$email = test_input($_POST["email"]);
}
if (empty($_POST["website"])) {
$website = "";
} else {
$website = test_input($_POST["website"]);
}
if (empty($_POST["comment"])) {
$comment = "";
} else {
$comment = test_input($_POST["comment"]);
}
if (empty($_POST["gender"])) {
$genderError = "Gender is mandatory";
} else {
$gender = test_input($_POST["gender"]);
}
}
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>
<h2>PHP Form Validation Example</h2>
<p><span class="Error">* mandatory field</span></p>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
Name: <input type="text" name="name">
<span class="Error">* <?php echo $nameError;?></span>
<br><br>
E-mail: <input type="text" name="email">
<span class="Error">* <?php echo $emailError;?></span>
<br><br>
Website: <input type="text" name="website">
<span class="Error"><?php echo $websiteError;?></span>
<br><br>
Comment: <textarea name="comment" rows="5" cols="40"></textarea>
<br><br>
Gender:
<input type="radio" name="gender" value="female">Female
<input type="radio" name="gender" value="male">Male
<input type="radio" name="gender" value="other">Other
<span class="Error">* <?php echo $genderError;?></span>
<br><br>
<input type="submit" name="submit" value="Submit">
</form>
<?php
echo "<h2>Your Input:</h2>";
echo $name;
echo "<br>";
echo $email;
echo "<br>";
echo $website;
echo "<br>";
echo $comment;
echo "<br>";
echo $gender;
?>
</body>
</html>

출력:

PHP에서 유효성 검사

위 프로그램에 대한 설명: 위 예에서는 텍스트 필드, 라디오 버튼, 이메일 형식 유형 등 사용 가능한 다양한 필드를 모두 결합했습니다. 출력은 HTML 코드에 제공된 사양에 따라 상자 형태로 표시됩니다. 필수 값을 입력하면 "입력한 세부 정보는 다음과 같습니다."라는 텍스트 아래에 동일한 값이 표시됩니다. 필수 값 중 하나라도 지정되지 않으면 해당 특정 속성 외에 해당 값이 필수이므로 입력해야 한다는 오류 메시지가 표시됩니다.

PHP 유효성 검사의 장점

  • 클라이언트 측 유효성 검사를 사용하면 서버를 끄거나 다른 HTML 페이지를 다운로드할 필요 없이 더 빠르게 피드백을 받을 수 있습니다.
  • 클라이언트측 검증은 서버 부하를 줄이는 데 도움이 되며 성능을 향상시킵니다.

결론

이 튜토리얼에서는 클라이언트측에서 PHP로 유효성 검사를 수행하는 방법과 이것이 얼마나 중요한지 살펴보았습니다. 이는 시간을 절약하는 데 도움이 되므로 더 많은 대역폭을 통해 최종 사용자가 주어진 양식을 작성할 때 실수를 지적할 수 있습니다. 그러나 JavaScript 등을 사용하여 수행되는 서버 측 유효성 검사도 중요합니다. 따라서 클라이언트 측 유효성 검사와 서버 측 유효성 검사는 최종 목적을 달성할 때 서로 보완하므로 모두 중요하다는 결론을 내릴 수 있습니다.

위 내용은 PHP에서 유효성 검사의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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