Как остановить FluentPDO неправильно, указав имя таблицы

У меня есть таблица пользователей, и я хочу, чтобы иметь возможность фильтровать таблицу по столбцу электронной почты, поэтому я могу видеть всех пользователей с учетными записями «gmail.com», например.

Мой текущий запрос fpdo выглядит так:

$filter_email = trim($_GET['email']); $fpdo->from('users') ->where('users.email LIKE "%' . $filter_email . '%"') ->fetchAll(); 

Когда я устанавливаю $filter_email в @ b , все работает нормально, а FluentPDO генерирует этот оператор SQL:

 SELECT users.* FROM users WHERE users.email LIKE "%a@b%" 

Но если я ищу @ bc FluentPDO пытается найти таблицу b и ошибки

 SELECT users.* FROM users LEFT JOIN b ON b.id = users.b_id WHERE users.email LIKE "%a@bc%" 

Я не знаю, как FluentPDO видит bc как таблицу для присоединения или как ее остановить.

РЕШЕНИЕ

Спасибо, главным образом, за то, что он был deceze, а также для aynber, вот рабочее решение:

 $filter_email = '%'.trim($_GET['email']).'%'; $fpdo->from('users') ->where('users.email LIKE ?',$filter_email) ->fetchAll(); 

Мой фактический запрос проверяет три разных поля электронной почты, но использует три ? и добавление $filter_email три раза отлично работает:

 ->where( '(users.email1 LIKE ? OR users.email2 LIKE ? OR users.email1 LIKE ?)', $filter_email, $filter_email, $filter_email )