У меня есть 5 полей с именами first_name
, last_name
, middle_name
, status
и barangay_name
, я хочу искать данные в зависимости от желания пользователя. Проблема только в том, что последнее поле с именем barangay_name
работает нормально. Остальное нет, что не так с моим запросом? Я получаю только активного бенефициара и присоединяюсь к tbl_beneficiary
и tbl_barangay
.
public function searchActiveBeneficiary($keyword) {
$sql = "SELECT tbl_beneficiary.beneficiary_id,
tbl_beneficiary.first_name, tbl_beneficiary.last_name,
tbl_beneficiary.middle_name, tbl_beneficiary.is_active,
tbl_barangay.barangay_name FROM tbl_beneficiary INNER JOIN tbl_barangay
ON tbl_barangay.barangay_id = tbl_beneficiary.barangay_id WHERE
tbl_beneficiary.is_active = 'Yes' AND tbl_beneficiary.first_name OR
tbl_beneficiary.is_active = 'Yes' AND tbl_beneficiary.last_name OR
tbl_beneficiary.is_active = 'Yes' AND tbl_beneficiary.middle_name OR
tbl_beneficiary.is_active = 'Yes' AND tbl_barangay.barangay_name LIKE
:keyword";
$stmt = $this->connection->prepare($sql);
$stmt->execute([
":keyword" => '%' . $keyword . '%'
]);
return $stmt->fetchAll();
}
//vue.js method
searchActiveBeneficiary : function() {
axios({
method : "GET",
url : this.urlRoot + "beneficiary/search_active_beneficiary.php?keyword=",
params : {
keyword : this.search_active_beneficiary
}
}).then(function (response){
vm.active_beneficiaries = response.data;
console.log(response);
});
},
<?php
include '../../private/initialize.php';
$beneficiary = new Beneficiary();
echo json_encode($beneficiary->searchActiveBeneficiary($_GET['keyword']));
?>