채택완료

for문 문의

2020-04-26 (일) 21:52:50 3,208

<?php
                    for ($i=1; $i<=5; $i++) {
                        echo $size[0];
                        if ($i == 1) echo '<ul>';
                        if ($view['file'][0]['file']) {
                            $image = urlencode($view['file'][$i]['file']);
                            if (preg_match("/\.(gif|jpg|png)$/i", $image) && file_exists(G5_PATH.'/data/file/'.$bo_table.'/'.$image)) {
                                echo '<li class="item'.$i.'">';
                                    echo '<figure class="img"><img src="'.G5_URL.'/data/file/'.$bo_table.'/'.$image.'" class=""></figure>';
                                    echo '<div class=box>';
                                        echo '<p class="text"><b>'.$view['wr_'.$i].'<i>'.$board['bo_subject'].'</i></b></p>';
                                    echo '</div>';
                                    echo '<a href="'.$view['file'][$i]['href'].'" class="link" target="_blank"><span>링크</span></a>';
                                echo '</li>';
                            }
                        }
                    }
                    if ($i > 1) echo '</ul>';
                ?>

현재 위에 for문을  돌렸을 시 li 부분에 반복이 

item1, item3 , item5 로 출력이 됩니다 

제가 원하는 건 item1 , item2, item3 순으로 하나 씩 증가인데 왜 2개 씩 증거하는지 알수가 없네요...

제가 뭘 놓치고 있는걸까요?...

답변 2개 / 댓글 3개

채택된 답변
+20 포인트

아래 문장이 실행되기전에  

  echo '<li class="item'.$i.'">';

두개의 if문이 있는데 이것의 영향을 받는 것 같습니다.

  if ($view['file'][0]['file']) 

또는 

if (preg_match("/\.(gif|jpg|png)$/i", $image) && file_exists(G5_PATH.'/data/file/'.$bo_table.'/'.$image)) {

이 원인인듯하니

echo 또는 alert으로 어떤 결과가 나오는지 확인하시면서

이 부분을 살펴보시는게 어떨까요?

답변에 대한 댓글 2개

if (preg_match("/\.(gif|jpg|png)$/i", $image) && file_exists(G5_PATH.'/data/file/'.$bo_table.'/'.$image)) {

위에 코드 부분 말씀해 주신 대로 다시 확인 하고 밑에 균이 님의 댓글을 조합하니 답이 나왔네요 두분 도움 주셔서 감사합니다 !!!
해결되셨다니 다행입니다.
오늘 하루도 행복한 하루보내세요!

item2 가 나오려면 첫번째 첨부화일이 있고 3번째 화일이 gif ,jpg ,png 여야 하는데 맞는지 확인해보면 되겠군요

item4 가 나오려면 첫번째 첨부화일이 있고 5번째 화일이 gif ,jpg ,png 이어야 됩니다

답변에 대한 댓글 1개

아!!! 그렇네요 2번째 파일이 이미지 파일이 아니라서 안 나왔던거네요 변수 조정 해서 코드 다시 짜니 원하는 모습으로 출력이 됩니다 감사합니다 !

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