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

if문 좀 봐주시면 감사하겠습니다. 채택완료

우우사랑 6년 전 조회 2,552

안녕하세요. 늦은 저녁죄송합니다.

방금 전까지 적용 잘되서 됐는데 안됩니다.

t_code='{$config['mb_no']}' 여기가 비어있으면 else로 넘어가야하는데 나오질 않고

데이터가 있으면 else 안넘어가고 데이터 값 나옵니다.

 

조건문이 잘못된건 아닌데 왜 else로 안넘어가는지 이해를 못하겠습니다.

 

<?php 
       
        $sql="select * from g5_shop_category where t_code='{$config['mb_no']}'";
        
        $result = sql_query($sql);

while($row = sql_fetch_array($result)) {
    $ca_name = $row['ca_name'];

?>
<?php if($ca_name){ ?>
    <li class="nav-item">
        <a class="nav-link active" href="#"><?echo $ca_name?></a>
    </li>
<?php }else{ ?>
    <li class="nav-item">
        <a class="nav-link" href="#">VASE</a>
    </li>
          <li class="nav-item">
            <a class="nav-link" href="#">GLASS</a>
          </li>
          <li class="nav-item">
            <a class="nav-link" href="#">ETC</a>
          </li>
           <li class="nav-item">
            <a class="nav-link" href="#">ETC</a>
          </li>
           <li class="nav-item">
            <a class="nav-link" href="#">ETC</a>
          </li>
          <?php }?>
        <?php }?>

 

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

답변 1개

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

저 조건문 대로 하면은 t_code='{$config['mb_no']} 에 값이 없으면이 아니고 

$row['ca_name'] 에 값이 있으면 또는 없으면이 되는것 같습니다.

이미 while로 $row를 가져온 상태를 조건으로 조건문을 돌린것 같은데요

while로 sql 데이터를 가져오기 전에 조건문을 만들면 될것 같네요.

$config['mb_no'] 값이 없으면 즉 가져올 sql 행이 없으면이라는 조건으로요

</p>

<p><?php</p>

<p>    $sql="select * from g5_shop_category where t_code='{$config['mb_no']}'";

    $result = sql_query($sql);

    $rcnt = sql_num_rows($result);</p>

<p>    if ( $rcnt == 0 ){  ?>

        <li class="nav-item">

            <a class="nav-link" href="#">VASE</a>

        </li>

        <li class="nav-item">

            <a class="nav-link" href="#">GLASS</a>

        </li>

        <li class="nav-item">

            <a class="nav-link" href="#">ETC</a>

        </li>

        <li class="nav-item">

            <a class="nav-link" href="#">ETC</a>

        </li>

        <li class="nav-item">

            <a class="nav-link" href="#">ETC</a>

        </li></p>

<p>    <?php }  </p>

<p>    while($row = sql_fetch_array($result)) {

        $ca_name = $row['ca_name'];

        

         if($ca_name){  ?>

            <li class="nav-item">

                <a class="nav-link active" href="#"><?php echo $ca_name; ?></a>

            </li>

        <?php     }

    } ?></p>

<p>

 

이렇게 한번 해보셔요

 

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

답변에 대한 댓글 1개

우우사랑
6년 전
이 늦은 밤에 감사드립니다. 일단 말씀하신대로 적용하고 이해했습니다. 정말 감사드립니다.

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

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

로그인