Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

php mysql select like not working

I am trying to query a mysql table using some "likes". But it doesn't work at all.

This is my code:

 $color_base1 = $row[color_base1];
$color_base2 = $row[color_base2];

$result2 = mysql_query("SELECT * FROM item_descr WHERE (color_base1 LIKE 
           '%$color_base1%' OR color_base2 LIKE '%$color_base1%' OR color_base1 
           LIKE '%$color_base2%' OR color_base2 LIKE '%$color_base2%') 
           AND id_item != $itemId");

if (mysql_fetch_array($result2) == 0)
{
     $result2 = mysql_query("SELECT * FROM item_descr WHERE (keywords LIKE 
                '%$keywords%') AND id_item != $itemId LIMIT 3");
}
else 
{
    $row2 = mysql_fetch_array($result2);
    echo "<div class='similarTitle'>YOU MAY ALSO LIKE</div>";
    while ($row2 = mysql_fetch_array($result2))
    {
       echo "<div class='similarItems'>";
       echo "<img class='similarImage' src='images/{$row2[thumb1]}.jpg'>";
       echo "<div class='similarItemsText'>".$row2[name]."</div></div>";
    }
}

Thanks!

like image 749
samyb8 Avatar asked May 20 '26 13:05

samyb8


1 Answers

try changing your queries into these:

Query1:

SELECT  * 
FROM    item_descr 
WHERE   (color_base1 LIKE CONCAT('%' , $color_base1, '%') OR 
         color_base2 LIKE CONCAT('%' , $color_base1, '%') OR 
         color_base1 LIKE CONCAT('%' , $color_base2, '%') OR 
         color_base2 LIKE CONCAT('%' , $color_base2, '%')) AND 
         id_item != $itemId

Query 2:

SELECT  * 
FROM    item_descr 
WHERE   keywords LIKE CONCAT('%' , $keywords, '%') AND 
        id_item != $itemId 
LIMIT 3
like image 176
John Woo Avatar answered May 22 '26 02:05

John Woo



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!