반응형
Ant_U
DBA 개미
Ant_U
전체 방문자
오늘
어제
  • 분류 전체보기 (262)
    • AWS (3)
    • C# (1)
    • SQL (236)
      • MYSQL (186)
      • MSSQL (50)
    • 자격증 (20)
      • SQLD (12)
      • SQLP (8)

인기 글

최근 글

250x250
hELLO · Designed By 정상우.
Ant_U

DBA 개미

SQL/MYSQL

[MYSQL] PHP와 MySQL의 기본 연동에 대해

2023. 7. 3. 14:49
728x90
반응형

PHP와 MySQL은 웹 개발에서 자주 사용되는 조합입니다. 

PHP를 사용하여 MySQL 데이터베이스와 연동하면 동적인 웹 애플리케이션을 개발할 수 있습니다. 

아래에서 PHP와 MySQL의 기본 연동 방법과 예시를 자세히 설명하겠습니다.

1. MySQL 데이터베이스 연결 설정:
   PHP에서 MySQL 데이터베이스에 접속하기 위해서는 먼저 연결 설정을 해야 합니다. 

   다음은 PHP에서 MySQL 데이터베이스에 연결하기 위한 예시입니다.

<?php
$host = 'localhost'; // MySQL 호스트
$username = 'root'; // MySQL 사용자명
$password = 'password'; // MySQL 비밀번호
$database = 'mydatabase'; // 사용할 데이터베이스명

$conn = mysqli_connect($host, $username, $password, $database);

if (!$conn) {
    die('MySQL 연결 실패: ' . mysqli_connect_error());
}
?>


   위의 예시에서는 `mysqli_connect()` 함수를 사용하여 MySQL 데이터베이스에 연결하고, 연결이 실패한 경우 오류 메시지를 출력합니다.

2. 쿼리 실행과 결과 처리:
   MySQL 데이터베이스에 쿼리를 실행하고 결과를 처리하기 위해서는 다음과 같은 단계를 따릅니다.

   - SQL 쿼리 작성: MySQL에서 실행할 쿼리를 작성합니다.
   - 쿼리 실행: `mysqli_query()` 함수를 사용하여 쿼리를 실행합니다.
   - 결과 처리: 실행된 쿼리의 결과를 처리합니다.

   다음은 데이터베이스의 테이블에서 데이터를 조회하는 예시입니다.

<?php
$query = "SELECT * FROM users";
$result = mysqli_query($conn, $query);

if ($result) {
    // 결과 처리
    while ($row = mysqli_fetch_assoc($result)) {
        echo $row['username'] . '<br>';
    }
} else {
    echo '쿼리 실행 실패: ' . mysqli_error($conn);
}

// 결과 해제
mysqli_free_result($result);

// 연결 종료
mysqli_close($conn);
?>


   위의 예시에서는 `SELECT * FROM users` 쿼리를 실행하여 `users` 테이블의 모든 데이터를 가져오고, 각 사용자명을 출력합니다. 

   쿼리 실행이 성공한 경우 결과를 반복하여 처리하고, 실패한 경우에는 오류 메시지를 출력합니다.

3. SQL 인젝션 방지:
   PHP에서 MySQL과 연동할 때 보안을 고려해야 합니다. SQL 인젝션 공격을 방지하기 위해 사용자 입력값을 올바르게 처리해야 합니다. 

   `mysqli_real_escape_string()` 함수를 사용하거나, 준비된 문장(Prepared Statement)을 사용하여 SQL 인젝션을 방지할 수 있습니다.

<?php
$username =

mysqli_real_escape_string($conn, $_POST['username']);
$password = mysqli_real_escape_string($conn, $_POST['password']);

$query = "SELECT * FROM users WHERE username='$username' AND password='$password'";
// 쿼리 실행...
?>


   위의 예시에서는 `mysqli_real_escape_string()` 함수를 사용하여 사용자 입력값을 이스케이프하여 쿼리에 안전하게 사용합니다.

이상이 PHP와 MySQL의 기본 연동에 대한 예시 설명입니다. 

PHP와 MySQL의 연동을 통해 데이터베이스와의 상호작용을 가능하게 하고, 웹 애플리케이션에서 동적인 데이터 처리와 데이터베이스 조작을 할 수 있습니다. 

보안 측면에서는 SQL 인젝션에 주의하여 사용자 입력값을 처리해야 합니다.

728x90
반응형

'SQL > MYSQL' 카테고리의 다른 글

[MYSQL] MySQL에서 진행하는 GIS 응용 프로젝트  (0) 2023.07.04
[MYSQL] MySQL에서 공간 데이터의 저장 방법  (0) 2023.07.03
[MYSQL] 지리정보시스템에 대해  (0) 2023.07.03
[MYSQL] 회원 관리시스템 만들기  (0) 2023.07.03
[MYSQL] HTML과 PHP 관계에 대해  (0) 2023.07.03
[MYSQL] PHP 기본 문법에 대해  (0) 2023.06.27
[MYSQL] 스크립트 언어 개요와 HTML 문법에 대해  (0) 2023.06.27
[MYSQL] 웹 사이트 개발 환경 구축에 대해  (0) 2023.06.27
    'SQL/MYSQL' 카테고리의 다른 글
    • [MYSQL] 지리정보시스템에 대해
    • [MYSQL] 회원 관리시스템 만들기
    • [MYSQL] HTML과 PHP 관계에 대해
    • [MYSQL] PHP 기본 문법에 대해
    Ant_U
    Ant_U

    티스토리툴바