mysql Unknown column 'Array'에러에 대해 질문드립니다.

mysql Unknown column 'Array'에러에 대해 질문드립니다.

QA

mysql Unknown column 'Array'에러에 대해 질문드립니다.

답변 1

본문

안녕하세요

항상 sir회원님들의 도움을 받고있는 회원입니다.

정말 감사드립니다.

 

다름이아니라 작업 중 궁금한점이 있어 질문드리게되었습니다.

 

$sql = "SELECT * FROM table_food where f_idx = ? ";
$stmt = $db->Prepare($sql);
$data = $db->GetRow($stmt, array($f_idx));

 

삭제코드에서 윗처럼 작성하면

아래의 오류가 나오고있습니다.

 

GetRow()(registration.php:126);
Fatal error: mysqli error: [1054: Unknown column 'Array' in 'where clause'] in EXECUTE("SELECT * FROM table_food where f_idx = Array ")

 

혹시 왜 이런현상이 있는지 궁금합니다.

고수님들의 많은 조언 부탁드립니다.

 

이 질문에 댓글 쓰기 :

답변 1

$data = $db->GetRow($stmt, array($f_idx));

 

여기에서 전달한 $f_idx 가 배열로 넘어가서 그래요

 

해결하려면

if (is_array($f_idx)) {

    foreach($f_idx as $val) {

        $stmt = $db->Prepare($sql);

        $data = $db->GetRow($stmt, array($val));

        // 멀티전달값일때 data 를 받고나서 처리할 로직

    }

}

else {

    $data = $db->GetRow($stmt, array($f_idx));

     // 단일 전달값일때 data를 받고나서 처리할로직

}

 

이런식으로 분기를 해주시면 해결될듯합니다.

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
  • 질문이 없습니다.
전체 0
© SIRSOFT
현재 페이지 제일 처음으로