구문 오류 좀 봐주세요 ㅠㅠ
본문
if ($_POST['act_button'] == "철회") {
for ($i=0; $i<count($_POST['chk']); $i++) {
// 실제 번호를 넘김
$k = $_POST['chk'][$i];
$it_id = (int) $_POST['it_id'][$k];
$ct_status = $_POST['ct_status2'][$k];
$ct_status2 = '';
$sql = " update {$g5['g5_shop_cart_table']}
set ct_status = '$ct_status',
ct_status2 = '$ct_status2'
where od_id = '$od_id'
and it_id = '$it_id' ";
sql_query($sql);
}
$sql = " select ct_status
from {$g5['g5_shop_cart_table']}
where od_id = '$od_id' ";
$result = sql_query($sql);
$value = '';
while ($row=sql_fetch_array($result)) {
$value .= (($value)? ',' : '').$row['ct_status'];
}
if (!in_array($value,'교환신청') && !in_array($value,'교환중') && !in_array($value,'교환완료') && !in_array($value,'반품신청') && !in_array($value,'반품중') && !in_array($value,'반품완료')) {
$od_return_status = '';
$od_status = $ct_status;
$od_return_memo1 = '';
$od_return_memo2 = '';
$sql2 = " update {$g5['g5_shop_order_table']}
set od_return_memo1 = '$od_return_memo1',
od_return_memo2 = '$od_return_memo2',
od_return_status = '$od_return_status',
od_status = '$od_status'
where od_id = '$od_id' ";
sql_query($sql2);
} else if (!in_array($value,'교환신청') && !in_array($value,'교환중') && !in_array($value,'교환완료')) {
$od_return_memo1 = '';
$sql2 = " update {$g5['g5_shop_order_table']}
set od_return_memo1 = '$od_return_memo1',
where od_id = '$od_id' ";
sql_query($sql2);
} else if (!in_array($value,'반품신청') && !in_array($value,'반품중') && !in_array($value,'반품완료')) {
$od_return_memo2 = '';
$sql2 = " update {$g5['g5_shop_order_table']}
set od_return_memo2 = '$od_return_memo2',
where od_id = '$od_id' ";
sql_query($sql2);
}
}
여기서 $value 값을 찍어보면
교환신청,교환신청,완료
이렇게 나옵니다.
그러면
else if (!in_array($value,'반품신청') && !in_array($value,'반품중') && !in_array($value,'반품완료'))
이 조건으로 들어가야 하는데
if (!in_array($value,'교환신청') && !in_array($value,'교환중') && !in_array($value,'교환완료') && !in_array($value,'반품신청') && !in_array($value,'반품중') && !in_array($value,'반품완료')) {
이 조건으로 들어가버립니다
뭐가 문제일까요? ㅠㅠ
!-->답변 3
이제 배열이 빠졌으니 in_array => preg_match 으로 바꿔주세요
$value 값을 조건문 위에 찍어보세요 머라고 나오는지 보시면 바로 이해되실거예요
참고해서 사용하세요~
<?php
$value1 = array('교환신청','교환중','교환완료','반품신청','반품중','반품완료');
$value2 = array('교환신청','교환중','교환완료');
$value3 = array('반품신청','반품중','반품완료');
$value = array('0','1','2','3','반품중','교환완료');
for($i=0; $i<count($value); $i++) {
if (!in_array($value[$i], $value1)) { //없으면 카운트
echo"Type1 $value[$i] <br>";
} elseif (!in_array($value[$i], $value2)) { //없으면 카운트
echo"Type2 $value[$i] <br>";
} elseif (!in_array($value[$i], $value3)) { //없으면 카운트
echo"Type3 $value[$i] <br>";
}
}
?>
답변을 작성하시기 전에 로그인 해주세요.