PHP 고급 검색 기능 구현 및 sql 동적 스플라이싱

慕斯
풀어 주다: 2021-06-30 10:02:40
앞으로
6862명이 탐색했습니다.

PHP에 대해 많은 것을 배웠습니다. PHP의 고급 검색 기능과 SQL의 동적 접합을 완전히 익혔는지 궁금합니다.

구현에 대해 알아보세요. PHP 고급 검색 기능과 SQL의 동적 접합 기능. 완성된 기능에는 단일 조건만을 기반으로 한 쿼리 또는 여러 조건을 기반으로 한 포괄적인 쿼리가 포함됩니다. SQL을 동적으로 연결하는 데 어려움이 있습니다.

완성된 효과

전체 화면

PHP 고급 검색 기능 구현 및 sql 동적 스플라이싱

이름만으로 퍼지 쿼리

PHP 고급 검색 기능 구현 및 sql 동적 스플라이싱

성별만으로 쿼리

PHP 고급 검색 기능 구현 및 sql 동적 스플라이싱

여러 조건을 기반으로 한 종합 쿼리

PHP 고급 검색 기능 구현 및 sql 동적 스플라이싱

앞 페이지 코드

<form action="" method="post">
<labal>姓名:</labal> <input style="width:105px" type="text" name="search_name" id="search_name" placeholder="姓名">
&nbsp
<labal>性别:</labal>
<input type="radio" name="search_sex" id="man" value="0">男
<input type="radio" name="search_sex" id="women" value="1">女
&nbsp
<labal>年龄:</labal><input style="width:105px" type="text" name="search_age" id="add_age"placeholder="年龄">
&nbsp
<labal>邮箱:</labal><input style="width:150px" type="text" name="search_email" id="search_email" placeholder="邮箱">
<input id="b" name="submit" style="width:60px" type="submit" value="检索">
</form>
로그인 후 복사

백엔드 처리 코드

//接收用户输入的数据$name = $sex = $age = $email = "";if (isset($_POST[&#39;submit&#39;])) {
    if (isset($_POST[&#39;search_name&#39;])) {
    	$name = $_POST[&#39;search_name&#39;];
    }
    if (isset($_POST[&#39;search_sex&#39;])) {
    	$sex = $_POST[&#39;search_sex&#39;];
    }
    if (isset($_POST[&#39;search_age&#39;])) {
    	$age = $_POST[&#39;search_age&#39;];
    }
    if (isset($_POST[&#39;search_email&#39;])) {
    	$email = $_POST[&#39;search_email&#39;];
    }//执行检索sql$search_sql = $myTest->searchData($name,$sex,$age,$email);$result = $myTest->sqlRun($search_sql);
로그인 후 복사

동적 접합 sql

public function searchData($name,$sex,$age,$email){

		switch ($name) {
			//未输入姓名
			case null:
				$name_info=&#39;&#39;;
				break;
			     //PHP 고급 검색 기능 구현 및 sql 동적 스플라이싱
			    default:
				$name_info=" and name LIKE &#39;%".$name."%&#39;";
				break;
		}
		switch ($sex) {
			//未输入性别
			case null:
				$sex_info=&#39;&#39;;
				break;
			//根据性别准确查询
			default:
				$sex_info=&#39; and sex=&#39;.$sex;
				break;
		}
		switch ($age) {
			//未输入年龄
			case null:
				$age_info=&#39;&#39;;
				break;
			//根据年龄准确查询
			default:
				$age_info=&#39; and age=&#39;.$age;
				break;
		}
		switch ($email) {
			//未输入邮箱
			case null:
				$email_info=&#39;&#39;;
				break;
			//根据邮箱模糊查询
			default:
				$email_info=" and email LIKE &#39;%".$email."%&#39;";
				break;
		}$search_sql=&#39;SELECT * FROM users WHERE 1=1&#39;.$name_info.$sex_info.$age_info.$email_info;&#39;&#39;;return $search_sql;
	}
로그인 후 복사

관련 학습 권장 사항: mysql 튜토리얼(동영상)

위 내용은 PHP 고급 검색 기능 구현 및 sql 동적 스플라이싱의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:csdn.net
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿