본문에 보이는 태그를 리스트에 보이게 할 수 있을까요?
본문
안녕하세요.
아래 소스처럼 본문에서 태그를 불러오고 있습니다.
<?php
if($view[$tagCol]){
$tags = explode(',',$view[$tagCol]);
?>
<div class="tagList view">
<i class="material-icons">label</i>
<div class="tagListIpt">
<ul>
<?php for($i=0; $i<count($tags); $i++){?>
<li class="tag">
<a href="<?php echo G5_URL; ?>/<?=$bo_table?>?bo_table=<?=$bo_table?>&sfl=<?=$tagCol?>&stx=<?=$tags[$i]?>"># <?=$tags[$i]?></a></li>
<?php } ?>
</ul>
</div>
</div>
<?php
}
?>
이걸 리스트에서
1. 게시물 제목 (태그1, 태그2, 태그3...)
2. 게시물 제목 (태그4, 태그5, 태그6...)
3. 게시물 제목 (태그7, 태그8, 태그9...)
이런식으로 뽑아오고 싶어서,
아래처럼 수정해서 리스트에 넣었습니다.
<?php
if($list[$i][$tagCol]){
$tags = explode(',',$list[$i][$tagCol]);
?>
<div class="tagList view">
<i class="material-icons">label</i>
<div class="tagListIpt">
<ul>
<?php for($i=0; $i<count($tags); $i++){?>
<li class="tag">
<a href="<?php echo G5_URL; ?>/<?=$bo_table?>?bo_table=<?=$bo_table?>&sfl=<?=$tagCol?>&stx=<?=$tags[$i]?>"># <?=$tags[$i]?></a></li>
<?php } ?>
</ul>
</div>
</div>
<?php
}
?>
그런데,
<?php for($i=0; $i<count($tags); $i++){?>
때문인지 첫번째 게시물의 게시물 제목과 태그는 정상적으로 나오지만
두번째 게시물부터는 게시물 자체가 나오지 않네요.
혹시 방법이 있을까요?
아시는 분 답변 부탁드립니다.
감사합니다.
!-->!-->
답변 2
$list[$i] 에서 $i 가 이미 사용되고 있는데
tags 부분의 $i 와 충돌이 일어나는 상황은 아닌가 생각해봅니다.
<?php for($i=0; $i<count($list); $i++){?>
...
<?php for($i=0; $i<count($tags); $i++){?>
이런 경우 데이터가 어떻게 되어 있는지도 중요하기 때문에
임시 데이터라도 제시를 하는게 문제 해결에 도움이 됩니다.
다음은 임의로 데이터를 채우고 내부 반복 플래그를 $i 가 아닌 $j 로 바꾼 예제 입니다.
<?php
define('G5_URL', '');
$tagCol = 'wr_1';
$bo_table = 'free';
$list = [
['wr_subject' => '게시물 제목 1', 'wr_1' => '태그1,태그2,태그3'],
['wr_subject' => '게시물 제목 2', 'wr_1' => '태그4,태그5,태그6'],
['wr_subject' => '게시물 제목 3', 'wr_1' => '태그7,태그8,태그9'],
];
$tagCol = 'wr_1';
for ($i = 0, $i_cnt = count($list); $i < $i_cnt; $i++) {
?>
<?php
if($list[$i][$tagCol]){
$tags = explode(',',$list[$i][$tagCol]);
?>
<div class="tagList view">
<i class="material-icons">label</i>
<div class="tagListIpt">
<ul>
<?php echo $list[$i]['wr_subject']; ?>
<?php for($j=0; $j<count($tags); $j++){?>
<li class="tag">
<a href="<?php echo G5_URL; ?>/<?=$bo_table?>?bo_table=<?=$bo_table?>&sfl=<?=$tagCol?>&stx=<?=$tags[$j]?>"># <?=$tags[$j]?></a></li>
<?php } ?>
</ul>
</div>
</div>
<?php
}
?>
<?php
}
?>
두번째 for문 $i==> $k로 변경
$tags[$i] ==> $tags[$k] 변경
답변을 작성하시기 전에 로그인 해주세요.