테스트 사이트 - 개발 중인 베타 버전입니다

이게 왜 그럴까요? 채택완료

민쯩먼저깔게요 7년 전 조회 3,725

     포인트가 0보다 작으면 빨간색으로 그렇지 않으면 양수값이면 녹색으로 표시하라고 한건데...

음수도 녹색으로 표시하네요,,,

 

                              

>                          

 

 

 

댓글을 작성하려면 로그인이 필요합니다.

답변 4개

채택된 답변
+20 포인트
7년 전

</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($mb[mb_point] < 0) $red="color:red;"; else $red='color:green;font-size:14px';  echo number_format($mb[mb_point]); }?>  이렇게 $mb가 선언된 이후에 코드를 넣어야합니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

민쯩먼저깔게요
7년 전
감사합니다 쉽게 설명해주셔서~
채택드려야 하는데..1분 뿐이라 화납니다.

댓글을 작성하려면 로그인이 필요합니다.

M
7년 전

위에 작업 하시기 바로 위에

var_dump($mb[mb_point]);

으로 실제 어떤 값이 나오는지 확인 해보셔야 할듯 합니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

민쯩먼저깔게요
7년 전
도움이 되었습니다~~

댓글을 작성하려면 로그인이 필요합니다.

플래토
7년 전

 

로 변경해보세요

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

민쯩먼저깔게요
7년 전
채택드려야 하는데..1분 뿐이라 화납니다.
플래토
7년 전
@민쯩먼저깔게요
ㅎㅎ 괜찮습니더
숫자를 비교할때 참고하시라고 intval
로 형변환 했던거구요
한줄 if문은 단일구조일때만 잘 작동합니다
굳이 한줄로 하시려면 중괄호{}로 감싸야죠
이번껀의 적폐(?)는 중괄호 누락입니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인