갑자기 파일이 에러라고 뜨는 상황입니다 ㅠ

갑자기 파일이 에러라고 뜨는 상황입니다 ㅠ

QA

갑자기 파일이 에러라고 뜨는 상황입니다 ㅠ

본문

SELECT * FROM g5_shop_cart WHERE od_id = '2021011914125214' AND it_id IN ( ji1221-1 ) ORDER BY it_id

1054 : Unknown column 'ji1221' in 'where clause'

error file : /shop/cartprint.php

 

갑자기 이런 메세지가 뜨는데 문제가 뭘까요...?

 

이 질문에 댓글 쓰기 :

답변 4

칼럼ㅁ명이없다는거같은데여 ji1221'이란

ji1221라는 컬럼이 없다는 뜻입니다. 해당 g5_shot_cart에는 커스텀 된것이 아니라면 해당컬럼이 없습니다.

따옴표 추가하면 될 듯 합니다.

it_id IN ( 'ji1221-1' )

// $s_cart_id 로 현재 장바구니 자료 쿼리
$qry = " SELECT * FROM {$g5['g5_shop_cart_table']} WHERE od_id = '$s_cart_id' AND it_id IN ( ". implode(",", $TMP['it']) ." ) ORDER BY it_id ";

$res = sql_query($qry, true);
if(sql_num_rows($res)>0) {
$idx = 0;
while($row = sql_fetch_array($res)) {
$DATA['cart'][$idx] = $row;

# 옵션DB 가져오기
$qry2 = " SELECT * FROM {$g5['g5_shop_item_option_table']} WHERE it_id = '{$row['it_id']}' AND io_id='{$row['io_id']}' AND io_type='0' ";
$res2 = sql_query($qry2, true);
if(sql_num_rows($res2)>0) {
$DATA['opt'][$idx] = sql_fetch_array($res2);
}

$idx++;
}
}

이쪽 구문인데 .... 어떻게 어디를 해야할까요 ㅠㅠ?

왜 그렇게 보기도 만들기도 어렵게 하는가요?

다음처럼 나누어 하면 헷갈리지않고 쉬울텐데요

그런데 $TMP['it']가 숫자가 아니고  ji1221 같은 문자라면 저렇게 합치면 안됩니다

따옴표로 감싸지 않으니 필드명으로 보는 것이죠

$idStr = "'".implode("','", $TMP['it'])>"'"; //===>'asdf','dfgh','qwert' 이런 형태로 만들어야 합니다

 ~~~ it_id IN ( $idStr )

 

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

회원로그인

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