когда я использую
if(!in_array($search_each, $commonwords))
этот код выдает ошибку, без этого он отлично работает
Я хочу создать результат поиска, но исключая некоторые общие слова , если не используется общие слова этот код работает нормально ...
ниже приведен выборочный результат поиска из базы данных
$t=strtolower($_POST['e']);
$commonwords = 'a,an,and,I,it,is,do,does,for,from,go,how,the,flat,offers,offer,etc';
$commonwords = explode(",", $commonwords);
if( strlen( $t ) <= 10 )
echo "";
else {
$search_exploded = explode ( " ", $t );
$construct = '';
foreach( $search_exploded as $search_each ) {
if(!in_array($search_each, $commonwords)){
$construct .="AND d_title LIKE ? ";
}
}
include $_SERVER['DOCUMENT_ROOT'] . "/deal/database/db.php";
$query =$con1->prepare("SELECT *
FROM deals
WHERE 1 $construct
ORDER BY `d_id` DESC ");
$params = array_map(function($term) { return "%$term%"; },
$search_exploded);
$query->execute($params);
$found=$query->rowCount();
if($found == 0){
echo "no Result Found";
}else{
while($row_de=$query->fetch(PDO::FETCH_ASSOC)){
$de_id=$row_de['d_id'];
$de_title=$row_de['d_title'];
$d_logo=$row_de['d_logo'] ;
$d_type=$row_de['d_type'];
echo $de_title;
}