작성자별 게시물 수 구하기 채택완료
공승현
1년 전
조회 960
</p>
<p> <?php</p>
<p> $sql = "select * from g5_write_day order by wr_name ASC";</p>
<p> $result = sql_query($sql);</p>
<p> </p>
<p> $name_list = array(); </p>
<p> for($i=0;$row=sql_fetch_array($result);$i++){</p>
<p> $name_list[] = $row['wr_name'];</p>
<p> } </p>
<p> $unique_name = array_unique($name_list);</p>
<p> ?></p>
<p> <select class="form-select required" onchange="window.open(value,'_self');"></p>
<p> <option>작성자</option></p>
<p> <option value="<?php echo G5_URL ?>/day">전체</option></p>
<p> <?php</p>
<p> for ($i=0; $i<count($unique_name); $i++) {</p>
<p> $name_arr = $unique_name[$i];</p>
<p> ?></p>
<p> <option value="<?php echo G5_BBS_URL ?>/board.php?bo_table=day&sop=and&sfl=wr_name%2C1&stx=<?php echo $name_arr ?>"<?php echo ($stx == $name_arr) ? " selected" : "";?>><?php echo $name_arr; ?></option></p>
<p> <?php</p>
<p> }</p>
<p> ?></p>
<p> </select></p>
<p>
이렇게 셀렉트 박스로 특정 게시판 작성자 리스트를 불러와서 작성자별 게시물 검색을 바로 하게 만들었는데 작성자별 게시물 수를 닉네임 옆에 표시하려면 데이터를 다시 불러와야 할까요?
댓글을 작성하려면 로그인이 필요합니다.
답변 2개
채택된 답변
+20 포인트
마르스컴퍼니
Expert
1년 전
<?php
$sql = "
select wr_name, count(*) as cnt
from g5_write_day
where wr_is_comment = 0
group by wr_name
order by wr_name ASC
";</p>
<p>$result = sql_query($sql);
?>
<select class="form-select required" onchange="window.open(value,'_self');">
<option>작성자</option>
<option value="<?php echo G5_URL ?>/day">전체</option>
<?php for ($i = 0; $row = sql_fetch_array($result); $i++) { ?>
<option value="<?php echo G5_BBS_URL ?>/board.php?bo_table=day&sop=and&sfl=wr_name%2C1&stx=<?php echo $row['wr_name'] ?>" <?php echo ($stx == $row['wr_name']) ? "selected" : "" ?>><?php echo $row['wr_name'] ?><?php echo '(' . $row['cnt'] . ')' ?></option>
<?php } ?>
</select>
로그인 후 평가할 수 있습니다
답변에 대한 댓글 1개
�
공승현
1년 전
댓글을 작성하려면 로그인이 필요합니다.
1년 전
</p>
<p> <?php
$sql = "select * from g5_write_day order by wr_name ASC";
$result = sql_query($sql);
$name_list = array();
for($i=0;$row=sql_fetch_array($result);$i++){
$name_list[] = $row['wr_name'];
} </p>
<p> // $unique_name = array_unique($name_list);
$unique_name = array_count_values($name_list);
?>
<select class="form-select required" onchange="window.open(value,'_self');">
<option>작성자</option>
<option value="<?php echo G5_URL ?>/day">전체</option>
<?php
// for ($i=0; $i<count($unique_name); $i++) {
// $name_arr = $unique_name[$i];
foreach ($unique_name as $name_arr => $name_cnt) {
?>
<option value="<?php echo G5_BBS_URL ?>/board.php?bo_table=day&sop=and&sfl=wr_name%2C1&stx=<?php echo $name_arr ?>"<?php echo ($stx == $name_arr) ? " selected" : "";?>><?php echo $name_arr . ' (' . $name_cnt . ')'; ?></option>
<?php
}
?>
</select></p>
<p>
로그인 후 평가할 수 있습니다
답변에 대한 댓글 1개
�
공승현
1년 전
답변 너무 감사드립니다. 공부에 정말 큰 도움이 됐어용~^^
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
늘 마르스컴퍼니님 실력에 감탄합니다. 정말 감사합니당~^^