I have this functions
public function returnArticlesByTag($tag)
{
return Db::queryRows('
SELECT * FROM `articles` WHERE `keywords` like `%?%` limit 10;
', array($tag));
}
public static function queryRows($query, $parameters = array())
{
$return = self::$connection->prepare($query);
$return->execute($parameters);
return $return->fetchAll();
}
I want find if string '$tag' is included in table 'article' in column 'keywords'
When I call function 'returnArticlesByTag' with string I have this error.
Uncaught PDOException: SQLSTATE[42S22]: Column not found: 1054 Unknown column '%?%' in 'where clause' in C:\laragon\www\models\Db.php:37
37 in DB is row with $return = self::$connection->prepare($query);
I tried use answer from possible duplicate. Now I have not any error. By select selected 0 rows. And its not correct.
public static function queryMYRows($query, $parameters = array())
{
$return = self::$connection->prepare($query);
$return->execute(array('%value%'));
var_dump($return);
return $return->fetchAll();
}
public function returnArticlesByTag($tag)
{
return Db::queryMYRows('
SELECT * FROM `articles` WHERE `keywords` like ? limit 10;
', array($tag));
}