Mohd Fadli
Mohd Fadli

Reputation: 143

search not found message after run query

I'm making a search query for my webs, and i get an error for my query after i add the if ($results==0) ......

Object of class mysqli_result could not be converted to int in line 65 which refer to if ($results==0)

$results = $mysqli->query("SELECT * FROM produk2 WHERE $construct" );

if ($results==0) 
	{
	echo "Sorry, there are no matching result for <b>$search</b>.</br></br>1. 
	      Try more general words. for example: If you want to search 'how to create a website'
	      then use general keyword like 'create' 'website'</br>2. Try different words with similar
	      meaning</br>3. Please check your spelling";
	}
	else{
        //fetch results set as object and output HTML
        while($obj = $results->fetch_object())
        {
	    echo '<div class="product">'; 
            echo '<form method="post" action="cart_update.php">';
	    echo '<div class="product-thumb"><img src="images/'.$obj->product_img_name.'"></div>';
            echo '<div class="product-content"><h3>'.$obj->product_name.'</h3>';
            echo '<div class="product-desc">'.$obj->product_desc.'</div>';
            echo '<div class="product-info">';
	    echo 'Price '.$currency.$obj->price.' | ';
            echo 'Qty <input type="text" name="product_qty" value="1" size="3" />';
	    echo '<button class="add_to_cart">Add To Cart</button>';
	    echo '</div></div>';
            echo '<input type="hidden" name="product_code" value="'.$obj->product_code.'" />';
            echo '<input type="hidden" name="type" value="add" />';
	    echo '<input type="hidden" name="return_url" value="'.$current_url.'" />';
            echo '</form>';
            echo '</div>';
        }
		}

Upvotes: 2

Views: 32

Answers (1)

Anik Islam Abhi
Anik Islam Abhi

Reputation: 25352

$mysqli->query don't have the data count until you ask for it

Try like this

if($results ->num_rows == 0){
  // no result found
}

Upvotes: 1

Related Questions