2026, 새로운 도약을 시작합니다.

게시글 반복되는 현상 채택완료

                <tbody>
                    <?php if($hol_cnt['hol_cnt'] == 0) { ?>
                        <td colspan="5">등록된 휴일이나 예약불가시간이 없습니다.</td>
                    <?php } ?>
                    <?php for ($i = 1;$i <= (int)$hol_cnt['hol_cnt']; $i++) { 
                        
                        $hol_sql = sql_fetch("select * from g5_coat_holiday where coat_id =".$co['coat_id']);
                        $result = ($hol_sql);
                        
                        ?>
                        
                        <tr>
                            <td><?php echo date('Y-m-d', strtotime($result['select_date'])) ?></td>
                            <td>
                                <?php if($result['holiday_type'] == 'holiday') { ?>
                                    휴일
                                <?php } ?>
                                <?php if($result['holiday_type'] == 'holiday_pay') { ?>
                                    휴일요금
                                <?php } ?>
                                <?php if($result['holiday_type'] == 'disable') { ?>
                                    예약불가시간 지정
                                <?php } ?>
                            </td>
                            <td><?php echo $co['place_name'].$result['select_coat'] ?></td>
                            <td><?php echo $result['select_time'] ?></td>
                            <td><?php echo $result['holiday_reason'] ?></td>
                            <td><a href="./coat_holiday_update.php?w=d&holiday_id=<? echo $result['holiday_id'] ?>" >삭제</a></td>
                        </tr>
                    <?php } ?>
                </tbody>

게시글을 표현하기위한 반복문인데...

순차적으로 게시글이 반복되어서 나와야할텐데

하나의 게시글만 반복돼서 질문을 남깁니다ㅠㅠ

FAQ랑 비슷한 성질이여서 보면서 해결해보려고 했는데 어떤 문제인지 모르겠네요...

출력부분을 $result[$i]['내용'] 으로 작성해도 나오지 않네요ㅠㅠ

답변 2개

채택된 답변
+20 포인트

위의 내용은 hol_cnt 수만큼 같은내용만 나오게 생겼네요

문제요소는

Copy
여기에 있습니다.

반복은 하지만

DB에서 조회하는것은 같은 내용만 반복하는거죠

$hol_sql = sql_fetch("select * from g5_coat_holiday where coat_id =".$co['coat_id']);

여기에 g5_coat_holiday 에 해당되는 key값을 알아야 합니다.

아무래도 임의로 수정을 하신게 아닌가 예상되는데

holiday 에 대한 카운트를 하셨다면

왜 카운트를 했는지

어떤 대상에 대한 카운트인지

순서는 무엇인지를 알아야 합니다.

$hol_cnt['hol_cnt'];를 만드는 쿼리르 보시면 key를 조회하는게 같이 있거나

아니면. .순서에 해당되는 쿼리조건문에 따라 반복추출을 다시금 해야합니다.

즉, sql_fetch로 가져올게 아니라.

조건에 맞춰서

$result = sql_query로 가져온것을

반복문에서 $result = sql_fetch_array($result); 로 대입해서 사용하셔야 합니다.

해당 쿼리문은 질문으로는 알수없기때문에 다시 질문하세요

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

답변에 대한 댓글 1개

넵 확인해보겠습니다!! 새로운 기능을 개발하다보니까 임의로 작성하는 부분이 많네요... 점심 맛있게드세용~

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

$i 값은 올라가는데 쿼리에서는 $co['coat_id'] 값만 조회하니까 

$co['coat_id'] 값이 하나라면 계속 같은 게시물만 불러오겠네요.

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

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

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

로그인
🐛 버그신고