2013-09-30 2 views
1

"IN"과 "="를 사용하여 콩을 찾으려고합니다. 나는 $ ID를 하나 개의 항목으로이 코드를 실행하면IN을 Redbean의 다른 조건과 함께 사용

PHP Notice: Array to string conversion in rb.php on line 217

Fatal error: Uncaught [HY093] - SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens thrown in rb.php on line 267

난 단지 통지를 얻을 수 있지만, 어느 쪽이든 내가 어떤 결과를 얻을 수 없습니다 :

$ids = array(1,2,3,4); 
$user = 1; 

$things = R::find(
    'thing', 
    'id IN ('.R::genSlots($ids).') AND user = ?', 
    array(
    $ids, 
    $user 
) 
); 

이 나에게 약간의 오차가 있습니다 : 나는 현재이 코드를 사용하고 .

저는 $ id를 단일 변수로 취급하려고한다고 가정합니다. 내가 뭘 놓치고 있니?

+0

'R :: genSlots()'는 배열을 허용합니까? – TheWolf

+0

그것은 그것이 무엇을위한 것이 아닌가요? –

+0

왜 R :: genSlots 대신 implode (',', $ ids)를 사용하지 않는 것이 좋을까요? – OIS

답변

5

$ ids를 배열에 추가하지 않고 두 배열을 하나의 배열로 병합하지 마십시오. 그렇지 않으면 중첩 배열로 끝납니다.

+0

정답입니다. –

관련 문제