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

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

QA

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

본문

안녕하세요

항상 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를 받고나서 처리할로직

}

 

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

답변을 작성하시기 전에 로그인 해주세요.
전체 1,506
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT