How do you use IN clauses with mysqli prepared statements [duplicate]

It’s not possible to bind a list of variable length to a single bound variable.

Similarly, if you were to bind the string $ids you’ll actually end up with:

SELECT foo,blar FROM table WHERE id IN ('123,535,345,567,878')

(Note the quotes around the list of IDs).

Creating your own query with the right number of question marks and bound parameters should have actually worked – you may need to try that again and report on the actual error.

Alternatively, this may be one of those occasions where it’s unfortunately necessary to hand-craft your own SQL and not use bound parameters.

Leave a Comment