>데이터 베이스 >MySQL 튜토리얼 >HTML Purifier 및 `mysqli_query()`를 사용한 후 `mysqli_num_rows()`가 'boolean 주어진'을 반환하는 이유는 무엇입니까?

HTML Purifier 및 `mysqli_query()`를 사용한 후 `mysqli_num_rows()`가 'boolean 주어진'을 반환하는 이유는 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-12-26 20:45:10529검색

Why Does `mysqli_num_rows()` Return

mysqli_num_rows() 매개변수 1은 mysqli_Result, PHP 및 MySQL에서 제공되는 부울

오류 메시지

사용 시 사용자 입력을 필터링하고 mysqli_query()를 사용하여 쿼리를 실행하는 HTML 정화기, 오류가 발생할 수 있습니다:

mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given

이 오류는 mysqli_result 객체 대신 부울 값으로 mysqli_num_rows()를 호출할 때 발생합니다.

해결책

오류의 근본 원인은 SQL 쿼리의 문제입니다. 주어진 코드에서 쿼리:

SELECT users.*, profile.*
                                 FROM users 
                                 INNER JOIN contact_info 
                                 ON contact_info.user_id = users.user_id 
                                 WHERE users.user_id=3");

에 오류가 있습니다. 쿼리 어디에도 프로필 테이블과의 JOIN이 없습니다. 이 문제를 해결하려면 쿼리에 올바른 JOIN 문을 포함해야 합니다.

수정된 쿼리:

SELECT users.*, profile.*
                                 FROM users 
                                 INNER JOIN profile 
                                 ON contact_info.user_id = users.user_id 
                                 WHERE users.user_id=3");

위 내용은 HTML Purifier 및 `mysqli_query()`를 사용한 후 `mysqli_num_rows()`가 'boolean 주어진'을 반환하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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