>백엔드 개발 >PHP 문제 >PHP 제품 필터링 기능 구현 방법

PHP 제품 필터링 기능 구현 방법

藏色散人
藏色散人원래의
2020-11-17 09:37:222877검색

PHP의 제품 필터링 기능을 구현하는 방법: 먼저 사용자가 제출한 쿼리를 수행한 다음 서버측 프로그램에서 사용자의 쿼리 요청을 얻은 다음 마지막으로 쿼리 결과를 반환합니다. 사용자, 사용자의 누르기 완료 조건에 따라 상품을 필터링하는 기능입니다.

PHP 제품 필터링 기능 구현 방법

추천: "PHP Video Tutorial"

php의 조건에 따라 제품을 필터링하는 기능은 비교적 간단합니다.

실제로는 다양한 조건에 따라 SQL 쿼리 조건을 형성하고, 데이터베이스에서 다양한 제품을 찾아내는 것입니다.

예:

사용자는 가격대, 브랜드, 제품명을 기준으로 포괄적인 검색을 수행할 수 있습니다.

그런 다음 사용자가 위의 쿼리 조건(3가지 조건이 모두 설정되거나 2개만 설정될 수도 있음)을 선택한 후 이를 서버에 제출하면 서버 프로그램이 사용자의 쿼리 조건을 받아 SQL 쿼리를 조합하기 시작합니다. 문을 작성하고 마지막으로 조합된 SQL 쿼리 문을 실행하고 결과를 사용자에게 반환합니다.

코드 예:

사용자가 제출한 쿼리:

price='0-1000'; //按价格范围0-1000元查询
 
brandid=20;  //要求品牌必须是ID号为20的这个(假设这个ID号为20的品牌,名字叫”西部数据")
productname='绿盘'; //商品名称只设置了2个字以做模糊查询

사용자가 쿼리 버튼을 클릭한 후 프로그램에 따라 쿼리 요청이 get 메서드 또는 post 메서드로 전송될 수 있습니다. post 방식으로 추정됩니다.

그러면 서버 측 프로그램에서 사용자의 쿼리 요청이 수신됩니다.

$price=$_POST['price'];
$price_arr=explode('-',$price); //这里是把价格范围按-号拆散成数组,方便在组装SQL查询语句时用。
 
$brandid=$_POST['brandid'];
$productname=$_POST['productname'];

물론 위 데이터를 얻은 후에는 해당 보안 검사 및 처리가 수행되어야 하므로 여기서는 생략하겠습니다.

다음으로 SQL 쿼리문 조합을 시작합니다.

$sqlexp='';
//下面开始组根据用户设置的查询条件进行SQL查询条件的组装
 
if(!empty($price)) {
    $sqlexp.=&#39; and (price>=&#39;.$price_arr[0].&#39; and price<=&#39;.$price_arr[1];
 
}
if(!empty($brandid)) {
   $sqlexp.=&#39; and brandid=&#39;.$brandid;
}
if(!empty($productname)) {
   $sqlexp.=" and instr(productname,&#39;$productname&#39;)>0";
}
 
//下面执行SQL查询
 
$result=mysql_query("select * from product where state=1 ".$sqlexp);

위 쿼리가 완료된 후 쿼리 결과가 사용자에게 반환되어 사용자가 조건에 따라 제품을 필터링하는 기능이 완성됩니다.

위 내용은 PHP 제품 필터링 기능 구현 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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