로그인 회원가입
모두인포
전체IT경제사회생활스포츠시사여행연애

PHP 입출력, 폼 처리

lmkfox · 2025-07-27 · 조회 0
PHP 입출력, 폼 처리
1. PHP의 입출력 (Input / Output) PHP는 서버 사이드 스크립트 언어로, 주로 웹 서버를 통해 클라이언트(브라우저)와 데이터를 주고받습니다. 1.1 출력 (Output) PHP의 출력은 주로 HTML로 이루어집니다. 클라이언트 브라우저에 데이터를 출력하려면 echo 또는 print를 사용합니다. <?php echo "Hello, World!"; print "PHP 출력 예제"; ?> - echo: 여러 인수를 출력할 수 있으며 빠릅니다. - print: 한 인수만 허용하지만 표현식으로 사용할 수 있습니다. 1.2 입력 (Input) PHP는 사용자로부터 데이터를 입력받을 수 있습니다. 일반적인 입력 방식은 다음과 같습니다: - 폼(Form) 입력 - URL 쿼리 스트링 (GET 방식) - POST 데이터 - 파일 업로드 - JSON 데이터 (AJAX 등) PHP는 이러한 데이터를 슈퍼글로벌(Superglobals)을 통해 접근합니다: - $_GET: URL의 쿼리 파라미터를 통해 전달된 데이터 - $_POST: 폼의 POST 방식으로 전달된 데이터 - $_REQUEST: GET, POST, COOKIE 데이터를 모두 포함 - $_FILES: 업로드된 파일 정보 - $_SERVER: 서버 및 실행 환경 정보 예시: <?php $name = $_GET['name']; // http://example.com?name=Alice echo "이름: " . $name; ?> 2. 폼 (HTML Form)과 PHP HTML 폼은 사용자로부터 데이터를 입력받아 서버로 전송하기 위한 도구입니다. 폼의 전송 방식에는 GET과 POST가 있습니다. 2.1 기본 폼 예제 <form method="post" action="process.php"> <label>이름: <input type="text" name="name"></label> <input type="submit" value="전송"> </form> 위 폼은 사용자가 입력한 name 값을 POST 방식으로 process.php로 전송합니다. 2.2 폼 처리 (PHP) process.php 파일: <?php $name = $_POST['name']; echo "입력한 이름: " . htmlspecialchars($name); ?> - htmlspecialchars(): XSS 공격 방지를 위해 HTML 특수문자를 이스케이프합니다. 3. HTTP와 PHP PHP는 HTTP 프로토콜 위에서 작동합니다. HTTP는 클라이언트(웹 브라우저)와 서버 간에 데이터를 주고받는 프로토콜입니다. 3.1 HTTP 요청 방식 - GET: 데이터를 URL에 쿼리 스트링으로 첨부하여 전송 - POST: 데이터를 HTTP 본문(body)에 담아 전송 - PUT, DELETE: REST API 등에서 사용, PHP에서는 php://input 등으로 접근 가능 3.2 PHP와 HTTP 헤더 PHP는 HTTP 헤더를 조작할 수 있습니다. // 리디렉션 header("Location: thankyou.php"); exit; // 콘텐츠 타입 설정 header("Content-Type: application/json"); 3.3 상태 코드 설정 http_response_code(404); // 404 Not Found 또는 header("HTTP/1.1 404 Not Found"); 4. 실전 예제: 간단한 폼 처리 form.html <form method="post" action="submit.php"> <input type="text" name="email" placeholder="이메일 입력"> <input type="submit" value="가입"> </form> submit.php <?php if ($_SERVER['REQUEST_METHOD'] === 'POST') { $email = trim($_POST['email'] ?? ''); if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { echo "올바른 이메일 주소가 아닙니다."; } else { echo "입력된 이메일: " . htmlspecialchars($email); } } ?> 요약 항목 설명 echo, print PHP의 출력 함수 $_GET, $_POST 클라이언트로부터의 입력 처리 <form> 입력 폼 구성 header() HTTP 응답 헤더 설정 http_response_code() 상태 코드 지정

댓글

아직 댓글이 없습니다.

로그인 후 댓글을 남길 수 있습니다.