예: PHP 문자열 분할:
-
- $keyword="asp php,jsp";
- $keyword=str_replace(" "," ",$ 키워드);
- $keyword=str_replace(" ",",",$keyword)
- $keyarr=explode(',',$keyword)
- for($index=0;$index< ;count($keyarr);$index )
- {
- $whereSql .= " And (arc.title like '%$keyarr[$index]%' 또는 arc.keywords like '%$keyarr[$index ]%') ";
- }
- echo $whereSql;
코드 복사 공백과 쉼표를 모두 지원하려면 다음과 같아야 합니다. 미리 통합된 것으로 교체한다는 것은 먼저 모든 공백을 쉼표로 바꾼 다음 문자열을 쉼표로 분할한 다음 SQL 쿼리 문을 루프로 연결하는 것을 의미합니다.
str_replace는 PHP에서 일반적으로 사용되는 문자열 대체 함수입니다.
폭발은 문자열을 배열로 분할하기 위해 PHP에서 일반적으로 사용되는 함수입니다.
다중 조건 쿼리 예제 코드의 PHP 구현
다중 조건문이 자주 사용되는데, 중고 주택 검색어의 예를 공유해 드리겠습니다.
이 예에서는 지리적 위치, 부동산 유형, 주택 가격, 주택 면적, 정보 공개 날짜 등 여러 조건을 통해 고객이 요구하는 정보를 쿼리해야 합니다.
쿼리 파일(search.php)
1. 쿼리 문을 생성합니다.
-
- $conn=mysql_connect("localhost","root","")
- $db=mysql_select_db(" lingyun");
- $query="select * from message where tradetype='".$tradetype."'"; //임대, 판매 등 거래 유형
- $SQL=$SQL . "wuye= ' " . $wuye . "'";
- if($housetype!="제한 없음"){
- $query.=" && housetype='".$housetype."'"; //주택 유형 , 예를 들어 침실 2개와 거실 1개, 침실 3개와 거실 2개
- }
- if($degree!="No Limit"){
- $query.=" && Degree='". $degree."'"; / /새로움
- }
- if($wuye!="제한 없음"){
- $query.=" && wuye='".$wuye."'"; //주택, 상점 등의 부동산 유형
- }
- if($price2!=""){
- switch($price1){
- case "greater than":
- $query. =" && 가격>'".$ 가격2."'"; //가격
- break
- case "equal to":
- $query.=" && 가격='".$price2." '";
- break;
- case "보다 작음":
- $query.=" && 가격<'".$price2."'";
- break;
- }
- }
- if($area2!=" "){
- switch($area1){
- case "보다 큼":
- $query.=" && Area>'".$area2." '"; //area
- break;
- case "equal to":
- $query.=" &&area='".$area2."'";
- break;
- case "보다 작음":
- $query.=" && Area<'".$area2."'"
- break
- }
- }
- switch($pubdate){ // 게시 날짜
- 케이스 "이번 주 이내":
- $query.=" && TO_DAYS(NOW()) - TO_DAYS(date)<=7"
- break
- 케이스 내; Month":
- $query.=" && TO_DAYS( NOW()) - TO_DAYS(날짜)<=30";
- break;
- case "3개월 이내":
- $query. =" && TO_DAYS(NOW()) - TO_DAYS(date )<=91";
- break;
- case "6개월 이내":
- $query.=" && TO_DAYS(NOW()) - TO_DAYS(date)<=183";
- break;
- }
- if($address!=""){
- $query.=" && 주소는 '%$address%'와 같습니다. "; //주소
- }
- if(!$page){
- $page=1;
- }
- ?>
코드 복사
두 번째、输流查询结果:
-
- if ($page){
- $page_size=20;
- $result=mysql_query($query);
- #$message_count=mysql_result($result,0,"total");
- $message_count=10;
- $page_count=ceil($message_count/$page_size);
- $offset=($page-1)*$page_size;
- $query=$query." 날짜별 주문 설명 제한 $offset, $page_size";
- $result=mysql_query($query);
- if($result){
- $rows=mysql_num_rows($result);
- if($rows!=0){
- while($myrow=mysql_fetch_array($result)){
- echo "
";
- echo "
| " ;
- echo "
$myrow[id] $myrow[tradetype] $myrow[address] $myrow[wuye]($myrow[housetype])[$myrow[날짜]]";
- echo "
| ";
- echo "
详细内容 a> | ";
- 에코 "
";
- }
- }
- else echo "
没有找到满足你条件的记录 | ";
- }
- $prev_page=$page-1;
- $next_page=$1페이지;
- echo "
";
- echo " 第".$page."/".$page_count."页 ";
- if ($page<=1){
- echo "|第一页|";
- }
- else{
- echo "|第一页|";
- }
- 에코 " ";
- if ($prev_page<1){
- echo "|上一页|";
- }
- else{
- echo "|上一页|";
- }
- 에코 " ";
- if ($next_page>$page_count){
- echo "|下一页|";
- }
- else{
- echo "|下一页|";
- }
- 에코 " ";
- if ($page>=$page_count){
- echo "|最后一页|";
- }
- else{
- echo "|最后一页|";
- }
- echo "
";
- }
- else{
- echo "
现재还没有房屋租赁信息! ";
- }
- echo "
";
- ?>
|