Web lists-archives.com

Re: [PHP] Array to string conversion error help needed




On Tue, Mar 8, 2016 at 12:56 PM, dealtek@xxxxxxxxx <dealtek@xxxxxxxxx>
wrote:

> newbie mysql select help needed.
>
>
> this works fine...
>
> $sth = $pdo->prepare("SELECT * FROM table1 where id IN (1,2,3)"
>
>
>
> but with an array like...
>
> $mylist = array("1","2","3");
> or
> $mylist = array(1,2,3);
>
> these fail...
> $sth = $pdo->prepare("SELECT * FROM table1 where id IN $mylist"
> or
> $sth = $pdo->prepare("SELECT * FROM table1 where id IN ($mylist)"
>
>
> I get error : Array to string conversion...
>
> Q: Can anyone help me fix this?
>
>
> --
> Thanks,
> Dave - DealTek
> dealtek@xxxxxxxxx
> [db-16]
>
>
If they are numbers:

$mylist = implode(',', $mylist);

If text you will need:

$mylist = "'".implode('','', $mylist)."'";

But in either case the original array needs to be run through an
escape_string() function to be safe, possibly using array_map().