The problem is this second line
$stmt = $this->prepareAndBind($query, $searchParams);
$stmt->execute(); //line 384
$searchParams is empty.
$stmt is false because that is being returned by prepareAndBind(). I think it should be a structure. Is this a known bug?
$stmt = $this->connection->prepare($query);
Here is the value of query that is causing prepare() to fail.
SELECT e.employee, e.employee_title, e.w2_wages as wages, t.risk,
WHEN risk='low' THEN e.w2_wages
WHEN risk='medium' THEN e.w2_wages*.5
END as QREs
FROM employees as e, titles as t
WHERE firstname.lastname@example.org' AND e.campaign= 'Apple'
AND email@example.com' AND t.campaign= 'Apple'
ORDER BY e.employee
Is it possible that the query is just too long? I think that this query was working a day or two ago. Please advise?