채택완료

여분필드 if&and문을 사용 이미지 출력문의

2020-07-26 (일) 21:43:41 2,525

여분필드 wr_1~wr_4 까지 숫자값이 입력되고 그 숫자를 비교하여 이미지 출력하는 문제입니다

나이가 좀 먹다보니 공부를 해도 금방 잊어먹고 구글링을 해봐도 찾지를 못하겠네요

답변 즘 부탁드립니다, 감사합니다

Copy
<?php

                if($list[$i]['wr_1']>=0 and $list[$i]['wr_1']<=30) echo "<img src='<?php echo G5_THEME_URL;?>/css/images/character1-1.png'>";

                if($list[$i]['wr_1']>=31 and $list[$i]['wr_1']<=80) echo "<img src='<?php echo G5_THEME_URL;?>/css/images/character2-1.png'>";

                if($list[$i]['wr_1']>=81 and $list[$i]['wr_1']<=150) echo "<img src='<?php echo G5_THEME_URL;?>/css/images/character3-1.png'>";

                if($list[$i]['wr_1']>=151 and $list[$i]['wr_1']<=600) echo "<img src='<?php echo G5_THEME_URL;?>/css/images/character4-1.png'>";

            ?>

답변 4개 / 댓글 4개

채택된 답변
+20 포인트
Copy
<?php
if($list[$i]['wr_1']>=0 and $list[$i]['wr_1']<=30) 
    echo "<img src='".G5_THEME_URL."/css/images/character1-1.png'>";
else if($list[$i]['wr_1']>=31 and $list[$i]['wr_1']<=80) 
    echo "<img src='".G5_THEME_URL."/css/images/character2-1.png'>";
else if($list[$i]['wr_1']>=81 and $list[$i]['wr_1']<=150) 
    echo "<img src='".G5_THEME_URL."/css/images/character3-1.png'>";
else if($list[$i]['wr_1']>=151 and $list[$i]['wr_1']<=600) 
    echo "<img src='".G5_THEME_URL."/css/images/character4-1.png'>";
?>

답변에 대한 댓글 1개

감사합니다. 덕분에 해결 되었습니다.
2020-07-27 (월) 09:16:44

이미 답변이 달린 글이지만 참고로 추가합니다.

Copy
if ( $list[$i]['wr_1']<=30 ) {
    echo '<img src="', G5_THEME_URL, '/css/images/character1-1.png">';
} else if ( $list[$i]['wr_1']<=80 ) {
    echo '<img src="', G5_THEME_URL, '/css/images/character2-1.png">';
} else if ( $list[$i]['wr_1']<=150 ) {
    echo '<img src="', G5_THEME_URL, '/css/images/character3-1.png">';
} else { // 150을 초과한 경우. 꼭 600 이하로 제한하려면 위처럼 <=600 조건 추가하면 됩니다.
    echo '<img src="', G5_THEME_URL, '/css/images/character4-1.png">';
}

// wr_1~wr_4까지 동일 조건 사용이면, 함수 추가하는 것이 낫겠죠?

답변에 대한 댓글 1개

넵! 감사합니다

질문에 적어주신 코드는 큰 문제가 없습니다. 단 중간 중간에 else를 넣어주셨으면 좋겠다 정도...

그 외 다른 정보(더 많은 소스)를 더 알려주시는게 좋을 듯 합니다.

답변에 대한 댓글 1개

감사합니다.

제작의도를 정확하게 파악할 수 없지만 아래처럼 하길 원하시는 듯 합니다.

<?php
for ($i=0; $i < sizeof($list[$i]); $i++) {
    if ($list[$i]['wr_1']>=0 and $list[$i]['wr_1']<=30) echo "<img src='<?php echo G5_THEME_URL;?>/css/images/character1-1.png'>";
    elseif ($list[$i]['wr_1']>=31 and $list[$i]['wr_1']<=80) echo "<img src='<?php echo G5_THEME_URL;?>/css/images/character2-1.png'>";
    elseif ($list[$i]['wr_1']>=81 and $list[$i]['wr_1']<=150) echo "<img src='<?php echo G5_THEME_URL;?>/css/images/character3-1.png'>";
    elseif ($list[$i]['wr_1']>=151 and $list[$i]['wr_1']<=600) echo "<img src='<?php echo G5_THEME_URL;?>/css/images/character4-1.png'>";
}
?>

답변에 대한 댓글 1개

음..일단 적용해 봤는데 아무 변화가 없네요

제가 설명이 부족했나 봅니다 죄송합니다

wr_1에 3이라는 값이 입력이 되어 있으면 character1-1.png을 출력하고 wr_1에 45가 입력되어 있으면

character2-1.png를 출력 하려고 합니다.

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