PHP

PHP mysqli_real_escape_string() 함수 용법


PHP mysqli_real_escape_string() 함수 용법


  2023-05-10  304 View 공개

PHP의 MySQLi 확장에서 사용하는 mysqli_real_escape_string() 함수에 대해 자세히 알아보자.  이 함수는 MySQL 쿼리를 안전하게 만드는 데 중요한 역할을 하므로, PHP와 MySQL을 사용하여 웹 애플리케이션을 개발하는 데 있어 중요한 지식이다.

mysqli_real_escape_string() 함수란?

mysqli_real_escape_string() 함수는 MySQL 쿼리에서 사용될 문자열에서 특수 문자를 안전하게 처리한다.
이 함수는 문자열에서 다음과 같은 특수 문자를 해제한다.
Text
• \x00
• \n
• \r
• \
• '
• '
• \x1a
이 함수는 SQL 인젝션 공격을 방지하는 데 도움이 된다.
SQL 인젝션은 공격자가 악의적인 SQL 문을 삽입하여 데이터베이스를 공격하는 방법이다.

 사용 방법

mysqli_real_escape_string() 함수를 사용하는 방법은 다음과 같다.
Mysql
mysqli_real_escape_string($connection, $string_to_escape);
여기서 $connection은 데이터베이스 연결을 나타내는 mysqli 객체이며, $string_to_escape는 이스케이프할 문자열이다.

 예제

다음은 mysqli_real_escape_string() 함수를 사용하는 간단한 예제이다.
Mysql
$mysqli = new mysqli('localhost', 'my_user', 'my_password', 'my_db');
$user_input = 'O'Reilly';
$safe_input = $mysqli->real_escape_string($user_input);
$query = 'INSERT INTO authors (name) VALUES ('$safe_input')';
$mysqli->query($query);
이 예제에서 사용자 입력에 작은따옴표(')가 포함되어 있다.
만약 이 문자열을 그대로 사용하면, SQL 쿼리가 제대로 작동하지 않다.
하지만 mysqli_real_escape_string() 함수를 사용하면 작은따옴표가 이스케이프되어 안전하게 쿼리에 삽입된다.

PHP의 MySQLi 확장에서 사용하는 mysqli_real_escape_string() 함수에 대해 자세히 알아보자. 이 함수는 MySQL 쿼리를 안전하게 만드는 데 중요한 역할을 하므로, PHP와 MySQL을 사용하여 웹 애플리케이션을 개발하는 데 있어 중요한 지식이다.

mysqli_real_escape_string() 함수란?

mysqli_real_escape_string() 함수는 MySQL 쿼리에서 사용될 문자열에서 특수 문자를 안전하게 처리한다. 이 함수는 문자열에서 다음과 같은 특수 문자를 해제한다.

  • • \x00
  • • \n
  • • \r
  • • \
  • • '
  • • '
  • • \x1a

이 함수는 SQL 인젝션 공격을 방지하는 데 도움이 된다. SQL 인젝션은 공격자가 악의적인 SQL 문을 삽입하여 데이터베이스를 공격하는 방법이다.

사용 방법

mysqli_real_escape_string() 함수를 사용하는 방법은 다음과 같다.

php
mysqli_real_escape_string($connection, $string_to_escape);

여기서 $connection은 데이터베이스 연결을 나타내는 mysqli 객체이며, $string_to_escape는 이스케이프할 문자열이다.

예제

다음은 mysqli_real_escape_string() 함수를 사용하는 간단한 예제이다.

php
$mysqli = new mysqli('localhost', 'my_user', 'my_password', 'my_db');
$user_input = 'O'Reilly';
$safe_input = $mysqli->real_escape_string($user_input);
$query = 'INSERT INTO authors (name) VALUES ('$safe_input')';
$mysqli->query($query);

이 예제에서 사용자 입력에 작은따옴표(')가 포함되어 있다. 만약 이 문자열을 그대로 사용하면, SQL 쿼리가 제대로 작동하지 않다. 하지만 mysqli_real_escape_string() 함수를 사용하면 작은따옴표가 이스케이프되어 안전하게 쿼리에 삽입된다.



🚩 PHP 글 모음 (총 56 건)

[PHP] 공공데이타포탈 XML 자료 파싱하기

Last Updated : 2023-09-30
#XML파싱 #공공데이타포탈

이메일 존재여부 확인

Last Updated : 2023-09-29

[PHP] 30분뒤 자동 로그아웃

Last Updated : 2023-09-29

[PHP] 타임존을 한국시간으로 설정하는 방법

Last Updated : 2023-09-29
#PHP #TIMEZONE

[PHP] 동시에 한 PC 에서만 로그인을 제한하는 방법

Last Updated : 2023-09-29
#php

[PHP] mb_substr 로 한글 문자열을 깨지지 않고 안전하게 분리하기

Last Updated : 2023-09-29
#PHP #mb_substr #한글문자열자르기