이게 왜 그럴까요? 채택완료
포인트가 0보다 작으면 빨간색으로 그렇지 않으면 양수값이면 녹색으로 표시하라고 한건데...
음수도 녹색으로 표시하네요,,,
if($mb[mb_point] < 0) $red="color:red;"; else $red='color:green;font-size:14px'; ?>
>
if ($is_admin || $member[mb_id]==$list[$i][mb_id]){
$mb = get_member($list[$i][mb_id], 'mb_point');
echo number_format($mb[mb_point]);
}?>
답변 4개
</p>
<p> <?php
$mb = get_member($list[$i][mb_id], 'mb_point');
if($mb[mb_point] <= 0) $red='color:red;'; else $red='color:green;font-size:14px';
?></p>
<p> <span style="<?php echo $red ?>">
<?php
if ($is_admin || $member[mb_id]==$list[$i][mb_id]){
echo number_format($mb[mb_point]);
}
?>
</span></p>
<p>
댓글을 작성하려면 로그인이 필요합니다.
$mb = get_member($list[$i][mb_id], 'mb_point');
이 실행되기 이전에
$mb[mb_point] 를 체크하니 당연히 $mb 변수가 있기 전이기 때문에
빈값이 들어가니까 그렇게 되는것같네요
결론은 코드 순서가 지금 안맞아요
간단하게 설명하자면 if ($is_admin || $member[mb_id]==$list[$i][mb_id]){ $mb = get_member($list[$i][mb_id], 'mb_point');
if($mb[mb_point] < 0) $red="color:red;"; else $red='color:green;font-size:14px'; echo number_format($mb[mb_point]); }?> 이렇게 $mb가 선언된 이후에 코드를 넣어야합니다.
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
위에 작업 하시기 바로 위에
var_dump($mb[mb_point]);
으로 실제 어떤 값이 나오는지 확인 해보셔야 할듯 합니다.
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
if(intval($mb[mb_point]) < 0) {$red="color:red;"; } else{ $red='color:green;'} $red .='font-size:14px'; ?>
로 변경해보세요
답변에 대한 댓글 2개
ㅎㅎ 괜찮습니더
숫자를 비교할때 참고하시라고 intval
로 형변환 했던거구요
한줄 if문은 단일구조일때만 잘 작동합니다
굳이 한줄로 하시려면 중괄호{}로 감싸야죠
이번껀의 적폐(?)는 중괄호 누락입니다
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
채택드려야 하는데..1분 뿐이라 화납니다.