Я использую CodeIgniter для создания проекта электронной коммерции, в котором я работаю над поиском продуктов из базы данных по нескольким параметрам фильтра с флажками.
Но я не получаю правильных результатов. Сначала я проверил Brand-> Dell, он получил два продукта, после этого я проверил Ram-> 5 ГБ, чтобы он не менялся, но я хочу, чтобы он показывал только 1 продукт 5 ГБ Ram с брендом DELL.
Модель
<?php
class ProductsM extends CI_Model {
public function getRowsByCheck($keyword){
if($keyword=="")
{
$search_keuword = '';
}
else
{
$search_keuword = "and brand IN ('".$keyword."') OR ram IN ('".$keyword."') OR price IN ('".$keyword."')";
}
$res = $this->db->query("SELECT * FROM products WHERE id!='' ".$search_keuword."")->result_array();
return $res;
}
}?>
Контроллер
class ProductsC extends CI_Controller {
public function fetchByCheck(){
$output='';
$keyword='';
if($this->input->post('tmp')){
$array = $this->input->post('tmp');
$keyword = implode("','",$array);
}
$data = $this->productsM->getRowsByCheck($keyword);
foreach ($data as $p) {
$output.='<div class="col-md-4">
<div class="panel panel-info">
<div class="panel-heading">'.$p["name"].'</div>
<div class="panel-body" align=center>
<img src="'.base_url("assets/images/".$p['image']).'" style="height:100px;">
</div>
<div class="panel-heading">Rs.'.$p["price"].'
<a href="'.base_url()."ProductsC/addToCart/".$p['id'].'" class="btn btn-success">Add To Cart</a>
Ram '.$p["ram"].'GB</div>
</div>
</div>';
}
echo $output;
}
}?>
Просмотр
div class="list-group">
<h3>BRAND</h3>
<?php
foreach($brand_data as $row){?>
<div class="list-group-item checkbox">
<label><input type="checkbox" class="common-selector brand searchType"
value="<?php echo $row['brand'];?>"><?php echo $row['brand'];?></label>
</div>
<?php } ?>
</div>
<div class="list-group">
<h3>RAM</h3>
<?php
foreach($ram_data as $row){?>
<div class="list-group-item checkbox">
<label><input type="checkbox" class="common-selector ram searchType"
value="<?php echo $row['ram'];?>"><?php echo $row['ram'];?></label>
</div>
<?php } ?>
</div>
Script.js
<script type="text/javascript">
$(document).ready(function(){
$('.searchType').on('click', function () {
var tmp = [];
$("input").each(function() {
if ($(this).is(':checked')) {
var checked = ($(this).val());
tmp.push(checked);
}
});
//alert(tmp);
$.ajax({
url:"<?php echo base_url();?>ProductsC/fetchByCheck",
method:"POST",
data:{tmp:tmp},
success:function(data){
//alert(data);
$('#result').html(data);
}
});
});
});
</script>