>백엔드 개발 >PHP 튜토리얼 >안전하고 효율적인 검색을 위해 PDO를 사용하여 LIKE 쿼리를 올바르게 구현하는 방법은 무엇입니까?

안전하고 효율적인 검색을 위해 PDO를 사용하여 LIKE 쿼리를 올바르게 구현하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-11-10 10:29:02500검색

How to Properly Implement LIKE Queries with PDO for Secure and Efficient Search?

PDO에서 LIKE 쿼리 구현

PDO에서 LIKE 쿼리를 사용할 때는 적절한 매개변수 처리를 보장하는 것이 중요합니다. 제공된 쿼리 예시:

SELECT * FROM tbl WHERE address LIKE '%?%' OR address LIKE '%?%'

잘못되었습니다. 변수 값에 LIKE 연산자를 포함하려면 쿼리 자체가 아닌 $params 배열에 백분율(%) 기호를 포함해야 합니다. 올바른 코드:

$query = "SELECT * FROM tbl WHERE address LIKE ? OR address LIKE ?";
$params = array("%$var1%", "%$var2%");
$stmt = $handle->prepare($query);
$stmt->execute($params);

$params 배열에 백분율 기호를 포함하면 준비된 명령문 쿼리로 올바르게 대체되어 변수 값 중 하나를 포함하는 주소가 검색됩니다.

추가 참고 사항:

  • 준비된 명령문 구문(물음표 포함)은 다음 용도로 사용됩니다. 보안을 강화하고 SQL 삽입 공격을 방지합니다.
  • 디버깅 시나리오에서 생성된 쿼리를 주의 깊게 확인하여 의도한 동작과 일치하는지 확인하는 것이 중요합니다.

위 내용은 안전하고 효율적인 검색을 위해 PDO를 사용하여 LIKE 쿼리를 올바르게 구현하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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