Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

PHP 스크립트로 MySQL 데이터베이스 연결하기 – 실전 예제 코드

PHP로 MySQL 데이터베이스에 연결하는 예제

PHP에서 MySQL 서버에 접속하려면 연결 함수에 호스트, 사용자 이름, 비밀번호를 전달하면 됩니다. 아래 예제는 사용자 'guest'와 비밀번호 'guest123'을 사용해 MySQL 데이터베이스에 연결하는 기본적인 스크립트입니다.

<html>
   <head>
      <title>Connecting MySQL Server</title>
   </head>
   <body>
      <?php
         $dbhost = 'localhost:3306';
         $dbuser = 'guest';
         $dbpass = 'guest123';
         $conn = mysql_connect($dbhost, $dbuser, $dbpass);
         
         if(! $conn ) {
            die('Could not connect: ' . mysql_error());
         }
         echo 'Connected successfully';
         mysql_close($conn);
      ?>
   </body>
</html>

코드 동작 방식

  • $dbhost : 접속할 MySQL 서버의 주소입니다. 여기서는 로컬 호스트의 기본 포트인 3306을 지정했습니다.
  • $dbuser, $dbpass : 데이터베이스 인증에 사용되는 사용자 이름과 비밀번호입니다.
  • mysql_connect() : 전달된 정보를 바탕으로 MySQL 서버와의 연결을 시도하고, 성공 시 연결 리소스를 반환합니다.
  • die() : 연결에 실패한 경우 mysql_error()가 반환한 오류 메시지와 함께 스크립트 실행을 즉시 중단합니다.
  • mysql_close() : 작업이 끝나면 열려 있던 데이터베이스 연결을 명시적으로 닫아 리소스를 해제합니다.

참고: 최신 PHP 환경에서는 mysqli 또는 PDO 사용 권장

위 예제에 사용된 mysql_* 함수군은 PHP 5.5부터 지원 중단(deprecated)되었으며, PHP 7부터는 완전히 제거되었습니다. 따라서 현재 프로젝트에서는 mysqli 확장 또는 PDO(PHP Data Objects)를 사용하는 것이 좋습니다.

예를 들어 위 코드를 mysqli 방식으로 바꾸면 다음과 같습니다.

<?php
$conn = mysqli_connect('localhost', 'guest', 'guest123');

if (!$conn) {
    die('Could not connect: ' . mysqli_connect_error());
}
echo 'Connected successfully';
mysqli_close($conn);
?>

mysqli는 절차적(procedural) 방식과 객체 지향(OOP) 방식을 모두 지원하며, prepared statement를 통한 SQL 인젝션 방어 등 더 강력한 보안 기능을 제공합니다.