Reputation: 39
I'm trying to make a query based on some field in my database.
I'm trying to select a cell with a string CONTAIN a keyword.
It's the LIKE
code that do not work.
Error code follows:
Failed to run query: SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens
PHP
$query = "
SELECT 1
FROM phpexcel
WHERE objekt_nr = :objekt_nr && element_nr = :element_nr && element_scanned_where LIKE '%:element_scanned_where%'";
$query_params = array(
':objekt_nr' => $ean_objekt_nr,
':element_nr' => $ean_element_nr,
':element_scanned_where' => $element_scanned_where
);
Upvotes: 1
Views: 83
Reputation: 3434
Try this:
$query = "
SELECT 1
FROM phpexcel
WHERE objekt_nr = :objekt_nr && element_nr = :element_nr && element_scanned_where LIKE :element_scanned_where";
$query_params = array(
':objekt_nr' => $ean_objekt_nr,
':element_nr' => $ean_element_nr,
':element_scanned_where' => '%'.$element_scanned_where.'%'
);
Upvotes: 2
Reputation: 31739
Try with -
$query = "
SELECT 1
FROM phpexcel
WHERE objekt_nr = :objekt_nr AND element_nr = :element_nr AND element_scanned_where LIKE %:element_scanned_where%";
$query_params = array(
':objekt_nr' => $ean_objekt_nr,
':element_nr' => $ean_element_nr,
':element_scanned_where' => $element_scanned_where
);
Upvotes: 0