cartupdate.php에서 오류가 발생해 질문드립니다.
본문
그간 그누보드 너무 잘 사용하고 있습니다.
그누보드 사용 후 첨으로 막히네요.
이번에 새로운 사이트 하나 작업하는데
도저히 이해가 안가는 오류가 있어 이렇게 도움을 청합니다.
파일 : shop/cartupdate.php
222번 줄 -
if ($ct_qty + $sum_qty > $it_stock_qty)
{
alert($io_value." 의 재고수량이 부족합니다.\\n\\n현재 재고수량 : " . number_format($it_stock_qty - $sum_qty) . " 개");
}
해당식에서 $it_stock_qty 가 0으로 나옵니다.
예를 들어 에코로 출력해 비교해 보면
echo $it_stock_qty;
if ($ct_qty + $sum_qty > $it_stock_qty)
{
echo $it_stock_qty;
alert($io_value." 의 재고수량이 부족합니다.\\n\\n현재 재고수량 : " . number_format($it_stock_qty - $sum_qty) . " 개");
}
첫번째 값은 9999 두번째는 0 이 나옵니다.
이때문에 해당 비교문에 걸려서 오류가 나는데요.
당최 이런경우는 첨이라 방법이 없네요.
$ct_qty + $sum_qty 값은 1로 정상적으로 나옵니다.
서버는 CentOS Linux release 7.4.1708 / php 7.0.27 / nginx/1.12.2 / mysql Ver 14.14 Distrib 5.7.21
!-->!-->
답변 2
이부분을 number_format($ct_qty
+
$sum_qty
) 해줘야 하지 않을까요?
자문 자답입니다.
원인은 shop.lib.php에 get_item_supply() 란 기능을
html변경하려고 extend에 커스터마이징 해서 사용했습니다.
해당기능은 상품추가 옵션생성로직인데요.
단순히 html만 바꿨는데 오류가 났었습니다.
자세히 말하면 <label></label> 이 태그가 삭제하니 오류가 납니다.
아시다시피 라벨태그는 폼값도 아닌 단순 이름표 인데
왜이런 오류가 발생하는지 지금도 의문입니다.
라벨태그가 빠지면 cartupdate.php 거칠때
비교문에서 $it_stock_qty 값이 사라집니다.
다른 서버환경에서 해봐도 마찬가지네요.
php버그인가 뭔지 몰라도 이것땜에 참...