PHP 검색(쿼리) 기능
오늘 문제가 발생했습니다. '검색' 기능을 사용할 때 쿼리 조건을 입력한 후 쿼리를 수행할 수 없습니다.
제가 하는 일은 홈페이지에 데이터 테이블 패키지의 내용을 표시하는 것인데, 홈페이지에 표시되는 내용도 필드 상태=0, 인쇄=0인 데이터가 되어야 한다는 조건이 있습니다. 홈페이지 목록에 표시됩니다.
페이지에 '검색' 기능이 있습니다. 조건을 입력하면 해당 조건에 따라 검색이 진행됩니다.
일반 검색의 경우 홈페이지 표시 목록 메소드 index()에 하나만 입력하세요.
$map=array();//쿼리 조건 초기화
$map=$this->_search();//쿼리 메소드 호출
$total = $this->Model->where ($map)->count() //주로 페이지에 표시되는 데이터 항목 수를 계산하는 데 사용됩니다
if ($total == 0) {
$_list = '';
} else {
$_list = $this->Model->where ($map)-> 제한( $post_data ['첫 번째'] . ',' . $post_data ['행'] )->select();
}
그런 다음 _search()를 작성하세요.
예:
보호된 함수 _search(){
$map = 배열();
$post_data = I( '포스트.' );
if ($post_data ['패키지 ID'] != '') {
$map ['패키지 ID'] = array (
'like',
'%' . $post_data ['패키지 ID '] .'%'
);
}
$map 반환
}
마지막으로 설정의 '검색' 메뉴에서 이 검색 방법을 호출하세요.
그러나 이 작업을 수행할 때 검색하는 동안 필드 상태=0 및 인쇄=0인 데이터에서도 검색해야 합니다.
이 제한사항을 어디에 두어야 할지 고민하고 있습니다. 다양한 시도와 문의 끝에 알게 되었습니다. 아래 빨간색으로 표시된 것처럼 제한 조건을 SQL 문에 직접 추가하면 됩니다. (직접 해보니 아래 파란색 부분에 조건을 계속 추가했는데 매번 실패했어요!)
$map=array();
$map=$this->_search();
$total = $this->Model->여기서($map )->where(array('status' =>0,'print_status'=>0))->count();
if ($total == 0) {
$_list = '';
} else {
$_list = $this->Model->where ($map) ->where(array('status' =>0,'print_status'=>0))->limit( $post_data ['first'] . ',' . $post_data ['행'] )->select();
}
여러분과 공유하고 싶습니다.
초보자도 배우고 있으니 의견과 조언을 부탁드립니다.

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제









