>  Q&A  >  본문

동적 개수의 LIKE 조건을 사용하여 mysqli 준비된 문으로 SELECT 쿼리 작성

사용자 입력을 위해 준비된 문장을 작성하려고 합니다. 매개변수의 개수는 사용자 입력에 따라 변경됩니다. Oam이 이 코드를 시도하고 있습니다

PHP 코드:

으아아아

내가 print_r($inputArray)할 때 출력은 다음과 같습니다.

으아아아

오류 로그에는 오류가 표시되지 않습니다.

무엇이 잘못됐나요?

P粉269847997P粉269847997231일 전353

모든 응답(2)나는 대답할 것이다

  • P粉826429907

    P粉8264299072024-03-26 14:50:12

    일반 쿼리 핸들러를 작성하고 쿼리, 매개변수 배열 및 매개변수 유형 목록을 전달하세요. 결과 또는 메시지 집합을 반환합니다. 이것은 mysqli의 개인용 버전입니다(저는 주로 PDO를 사용하지만 이와 비슷한 기능이 설정되어 있습니다). 삽입, 업데이트, 삭제에도 동일한 작업을 수행합니다. 그런 다음 하나의 라이브러리를 유지하고 모든 작업에 사용하세요 :) 이것으로 시작하면 연결 오류 등을 더 잘 처리할 수 있습니다.

    으아아아

    회신하다
    0
  • P粉787806024

    P粉7878060242024-03-26 12:36:45

    % 자리 표시자가 아닌 서라운드 매개변수입니다.

    내 코드 조각은 코드에서 보여주는 절차적 구문 대신 객체 지향 mysqli 구문을 사용합니다.

    먼저 필요한 재료를 설정해야 합니다:

    1. WHERE 절 표현식 - OR로 구분
    2. 값의 데이터 유형 - 값은 문자열이므로 "s"를 사용하세요.
    3. 준비된 문에 바인딩할 매개변수

    스플랫 연산자(...)를 사용하여 더 쉽게 "압축 해제"할 수 있도록 #2와 #3을 변수로 결합하겠습니다. 데이터 유형 문자열은 첫 번째 요소여야 하며, 그러면 하나 이상의 요소가 바인딩된 값을 나타냅니다.

    논리적 포함으로서 WHERE 절에 조건이 없으면 준비된 문을 사용해도 이점이 없으며 테이블을 직접 쿼리하면 됩니다.

    코드: (PHPize.online 데모)

    으아아아

    유사한 동적 쿼리 기술을 찾는 사람:

    회신하다
    0
  • 취소회신하다