그룹별 최다 조회수 글 추출문제 정보
그누보드 그룹별 최다 조회수 글 추출문제본문
안녕하세요. 가르침을 받고자 글을 올립니다.
다음에 쓸 소스는 한개 그룹은 되는데 두개 그룹은 안되더군요. 첨에는 되는줄 알았는데 글을 올리니까
다른 한개 그룹에서는 에러 메시지가 뜨네요.
밑에 찾아 보니까 저랑 같은 메시지 인데 알려주는 분이 없더군요^.^;
다시한번 같은 문제로 글 올립니다. 해결좀 부탁드립니다.
************************에러 메시지 ***********************
Warning: Cannot use a scalar value as an array in
(홈피주소) on line 44 //()안에는 홈피주소이고 메시지 앞에 정렬시 스칼라값을 사용할수 없다는 메시지가 같더군요.
************** 소 스 ****************************
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
define("_DOCTYPE_", "DESIGN");
$maxrow = 10000; // default 조회 값
?>
<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<table width=95% height="20" border="0" align=center cellpadding=0 cellspacing=0>
<tr>
<td width='' height="20" valign=top>
<?
$sql = " select a.bo_subject, a.bo_table, b.gr_subject
from $cfg[table_board] a, $cfg[table_group] b
where a.gr_id = b.gr_id AND b.gr_id = '그룹명'
order by b.gr_id, a.bo_table ";
$result = sql_query($sql);
while ($row = mysql_fetch_array($result)) {
$tbl = "{$cfg[write_table_prefix]}{$row[bo_table]}";
$sql2 = " select wr_id,
wr_parent_id,
mb_id,
wr_name,
wr_email,
wr_homepage,
wr_num,
wr_subject,
wr_comment,
wr_commentcnt,
wr_datetime,
wr_hit
from $tbl
where wr_comment = '0'
order by wr_hit desc
limit 0, $maxrow";
$result2 = sql_query($sql2);
for ($i = 0; $row2 = mysql_fetch_array($result2); $i++) {
$wr_subject = get_text($row2[wr_subject]);
$key = $row2[wr_hit] . $row2[wr_datetime];
$list[$key]->bo_subject = $row[bo_subject];
$list[$key]->bo_table = $row[bo_table];
$list[$key]->mb_id = $row2[mb_id];
$list[$key]->mb_open = $row2[mb_open];
$list[$key]->wr_id = $row2[wr_id];
$list[$key]->wr_parent_id = $row2[wr_parent_id];
$list[$key]->wr_email = $row2[wr_email];
$list[$key]->wr_homepage = $row2[wr_homepage];
$list[$key]->wr_name = get_text(cut_str($row2[wr_name],5));
$list[$key]->wr_subject = get_text(cut_str($wr_subject,25,'…'));
$list[$key]->wr_comment = $row2[wr_comment];
$list[$key]->wr_commentcnt = $row2[wr_commentcnt];
$list[$key]->wr_datetime = $row2[wr_datetime];
$list[$key]->wr_hit = $row2[wr_hit];
}
mysql_free_result($result2);
}
mysql_free_result($result);
?>
<table width=100% border=0 cellspacing=0 cellpadding=0>
<?
if (count($list) > 0) {
$i=0;
krsort($list,1);
reset ($list);
foreach ($list as $key=>$value) {
if ($i >= $maxrow) break;
$comment = "";
$atag_comment = "";
if ($value->wr_comment > 0) {
$comment = "<span style='font-size:8pt;'>[c]</span> ";
$atag_comment = "#c{$value->wr_id}";
}
$commentcnt = "";
if ($value->wr_commentcnt > 0) {
$commentcnt = "<font size=-2>({$value->wr_commentcnt})</font>";
}
$name = gblayer($value->mb_id, cut_str($value->wr_name,2), $value->wr_email, $value->wr_homepage);
$value->bo_subject = cut_str($value->bo_subject,25);
$list = $i++%2;
echo "<tr align=center>";
echo "<td align=left width=230 height=20><b>ㆍ</b><a href='./?doc=$cfg[bbs_dir]/gnuboard.php&bo_table=".$value->bo_table."&wr_id=".$value->wr_parent_id."$atag_comment'>$comment{$value->wr_subject}</a> {$commentcnt}</td>";
echo "<td width=40 align=right height=20><span style='font-size:8pt;'>[{$value->wr_hit}]</span></td>";
echo "</tr>\n";
}
} else
echo "<td height=100 align=center colspan=4>등록된 글이 없습니다.</td>";
?>
</table>
</td>
</tr>
</table>
부디 많은 답변 부탁드립니다. 아니면 좋은 방법이 있으면 부탁드립니다.
추신 : 글 갯수 조절은 맨위에 $maxrow = 10000; <<요거로 조절하는거 맞죠?
다음에 쓸 소스는 한개 그룹은 되는데 두개 그룹은 안되더군요. 첨에는 되는줄 알았는데 글을 올리니까
다른 한개 그룹에서는 에러 메시지가 뜨네요.
밑에 찾아 보니까 저랑 같은 메시지 인데 알려주는 분이 없더군요^.^;
다시한번 같은 문제로 글 올립니다. 해결좀 부탁드립니다.
************************에러 메시지 ***********************
Warning: Cannot use a scalar value as an array in
(홈피주소) on line 44 //()안에는 홈피주소이고 메시지 앞에 정렬시 스칼라값을 사용할수 없다는 메시지가 같더군요.
************** 소 스 ****************************
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
define("_DOCTYPE_", "DESIGN");
$maxrow = 10000; // default 조회 값
?>
<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<table width=95% height="20" border="0" align=center cellpadding=0 cellspacing=0>
<tr>
<td width='' height="20" valign=top>
<?
$sql = " select a.bo_subject, a.bo_table, b.gr_subject
from $cfg[table_board] a, $cfg[table_group] b
where a.gr_id = b.gr_id AND b.gr_id = '그룹명'
order by b.gr_id, a.bo_table ";
$result = sql_query($sql);
while ($row = mysql_fetch_array($result)) {
$tbl = "{$cfg[write_table_prefix]}{$row[bo_table]}";
$sql2 = " select wr_id,
wr_parent_id,
mb_id,
wr_name,
wr_email,
wr_homepage,
wr_num,
wr_subject,
wr_comment,
wr_commentcnt,
wr_datetime,
wr_hit
from $tbl
where wr_comment = '0'
order by wr_hit desc
limit 0, $maxrow";
$result2 = sql_query($sql2);
for ($i = 0; $row2 = mysql_fetch_array($result2); $i++) {
$wr_subject = get_text($row2[wr_subject]);
$key = $row2[wr_hit] . $row2[wr_datetime];
$list[$key]->bo_subject = $row[bo_subject];
$list[$key]->bo_table = $row[bo_table];
$list[$key]->mb_id = $row2[mb_id];
$list[$key]->mb_open = $row2[mb_open];
$list[$key]->wr_id = $row2[wr_id];
$list[$key]->wr_parent_id = $row2[wr_parent_id];
$list[$key]->wr_email = $row2[wr_email];
$list[$key]->wr_homepage = $row2[wr_homepage];
$list[$key]->wr_name = get_text(cut_str($row2[wr_name],5));
$list[$key]->wr_subject = get_text(cut_str($wr_subject,25,'…'));
$list[$key]->wr_comment = $row2[wr_comment];
$list[$key]->wr_commentcnt = $row2[wr_commentcnt];
$list[$key]->wr_datetime = $row2[wr_datetime];
$list[$key]->wr_hit = $row2[wr_hit];
}
mysql_free_result($result2);
}
mysql_free_result($result);
?>
<table width=100% border=0 cellspacing=0 cellpadding=0>
<?
if (count($list) > 0) {
$i=0;
krsort($list,1);
reset ($list);
foreach ($list as $key=>$value) {
if ($i >= $maxrow) break;
$comment = "";
$atag_comment = "";
if ($value->wr_comment > 0) {
$comment = "<span style='font-size:8pt;'>[c]</span> ";
$atag_comment = "#c{$value->wr_id}";
}
$commentcnt = "";
if ($value->wr_commentcnt > 0) {
$commentcnt = "<font size=-2>({$value->wr_commentcnt})</font>";
}
$name = gblayer($value->mb_id, cut_str($value->wr_name,2), $value->wr_email, $value->wr_homepage);
$value->bo_subject = cut_str($value->bo_subject,25);
$list = $i++%2;
echo "<tr align=center>";
echo "<td align=left width=230 height=20><b>ㆍ</b><a href='./?doc=$cfg[bbs_dir]/gnuboard.php&bo_table=".$value->bo_table."&wr_id=".$value->wr_parent_id."$atag_comment'>$comment{$value->wr_subject}</a> {$commentcnt}</td>";
echo "<td width=40 align=right height=20><span style='font-size:8pt;'>[{$value->wr_hit}]</span></td>";
echo "</tr>\n";
}
} else
echo "<td height=100 align=center colspan=4>등록된 글이 없습니다.</td>";
?>
</table>
</td>
</tr>
</table>
부디 많은 답변 부탁드립니다. 아니면 좋은 방법이 있으면 부탁드립니다.
추신 : 글 갯수 조절은 맨위에 $maxrow = 10000; <<요거로 조절하는거 맞죠?
댓글 전체
44번은 krsort($list,1);
reset ($list);
요 부분입니다.
reset ($list);
요 부분입니다.
스칼라값을 array로 사용할수 없다는 에러인데
소스에서 라인 44번이 어떤것인지 알아야 답이 나올것 같군요.
소스에서 라인 44번이 어떤것인지 알아야 답이 나올것 같군요.