I'd like to use a PDO prepared statement to perform a MySQL query that uses the
IN function.
I.e.:
$stmt = $pdo->prepare('
select *
from mytable
where myfield IN (:contents)
);
$stmt->bindValue(':contents', $contents);
$stmt->execute();
Here's the problem:
If $contents is set to a single value, everything's fine:
$contents = 'mystring';
How can I include multiple values in here? If $contents is set to an array,
PHP throws an "Array to string conversion" notice.
i.e. $contents = array('mystring1', 'mystring2');
If $contents is set to a comma-separated list, no matches are returned
(probably because the entire "list" is being passed to MySQL as a single value,
not multiple values).
I.e. $contents = 'mystring1,mystring2';
What's the proper way to do this? Can it be done? (Note that I do not know
how many elements will be in $contents ahead of time, so something like IN
(:contents1, :contents2) wouldn't make sense.)
Thanks for any help!
- TK
--
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php