하나 이상의 (다중) 매개변수가 포함된 검색 양식
문제:
이전 검색 양식 구현에서는 한 번에 하나의 매개변수만 사용할 수 있었습니다. 목표는 사용자가 하나 이상의 매개변수를 입력하고 해당 검색 결과를 받을 수 있도록 이 양식을 수정하는 것입니다.
해결책:
이를 달성하기 위해 입력 매개변수를 기반으로 WHERE 절을 동적으로 작성하도록 PHP 코드를 수정합니다.
수정됨 search.php:
<?php $wheres = []; $params = []; if (!empty($_POST['id']) && isset($_POST['id'])) { $wheres[] = 'a.uid = :uid'; $params[':uid'] = $_POST['id']; } if (!empty($_POST['major']) && isset($_POST['major'])) { $wheres[] = 'a.major = :major'; $params[':major'] = $_POST['major']; } if (!empty($_POST['college']) && isset($_POST['college'])) { $wheres[] = 'a.college = :college'; $params[':college'] = $_POST['college']; } if (!empty($_POST['name']) && isset($_POST['name'])) { $wheres[] = 'b.name LIKE :name'; $params[':name'] = '%' . $_POST['name'] . '%'; } $sql = "SELECT * FROM user_details AS a JOIN user AS b ON a.uid = b.id"; if (!empty($wheres)) { $sql .= " WHERE " . implode(' AND ', $wheres); } $stmt = $db->prepare($sql); $stmt->execute($params); // Display the results as in the original code
설명:
이제 사용자는 이 접근 방식을 활용하여 여러 매개변수를 입력하고 지정된 모든 항목을 기반으로 결과를 얻을 수 있습니다. 기준입니다.
위 내용은 여러 검색 매개변수를 허용하도록 검색 양식을 수정하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!