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

For문 질문입니다.

· 13년 전 · 1551 · 6
<?

$sql = "select gr_id, gr_subject, gr_1 from $g4[group_table] where gr_id not in ($home_ex_main) order by gr_1";
$rst1 = sql_query($sql);

for ($i=0; $row=sql_fetch_array($rst1); $i++){
$sqlp2 = "select * from $g4[board_table] where gr_id = '$row[gr_id]' and bo_table not in ($home_ex_board) order by bo_order_search asc";
$qryp2 = sql_query($sqlp2);
$ck_count = count($row) - 1;
?>

<li class="<? if($i == $ck_count){echo '';} else { echo 'g_gab';}?>">
<a href="<?=$g4[bbs_path]?>/group.php?gr_id=<?=$row[gr_id]?>"><?=$row[gr_subject]?></a>
</li>

<?}?>


정리해서 말하자면 그누보드 그룹을 쿼리 처리하여 for문을 돌리다 마지막 값일때 class명을 다른것으로 주려고 하는데 프로그램 지식이 짧아 잘 모르겠습니다.

<li class="<? if($i == $ck_count){echo '';} else { echo 'g_gab';}?>">

이 부분을 어떻게 해야 될지 모르겠네요.. 나름 여러가지 방법을 해봤으나
그룹전체 갯수를 알수 있는 방법 알려주세요

댓글 작성

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

로그인하기

댓글 6개

13년 전
<? if($i == count($row)){echo '';} else { echo 'g_gab';}?>
이렇게 해보세요
근데 $ck_count 값을 count($row) 로 가져오는데
$row 가 안보이네요ㅕ
답변 감사합니다 $row 는 for 문에 있습니다
13년 전
글네요 ㅡㅡ
요새정신이 밖에 나와있어서
여튼 count($row) 하시면 전체 갯수를 가지고오실겁니다
for ($i=0; $row=sql_fetch_array($rst1); $i++){

이거 $i 가 증감은 하는데 $row 가 잡히나요?
count($row)를 하면 3이라는 값이 나오는데 $sql 에서 정의한 갯수가 출력이 됩니다... 지식이 적어 원인은 모르겠고 정확히 알고 싶은 것은 전체 그룹개수입니다.. 적어두지는 않았지만 상단에 제외 그룹도 있어 현재 표현되고 있는 그룹전체 갯수를 알고싶은데.. 잘 모르겠습니다.

그렇게 표현되고 있는 전체 그룹갯수를 구한후 마지막 for문과 비교해 class를 조절할려고 합니다
상단 제외그룹 형식은

$home_ex_main = "'gr_01','gr_06'"; // 제외그룹
$home_ex_board = "'제외게시판1','제외게시판2'"; // 제외게시판

게시글 목록

번호 제목
284508
284499
284492
284490
284484
284481
284478
284476
284474
284472
284470
284458
284457
284454
284453
284447
284446
284444
284441
284440