第 1 頁 (共 1 頁)
[問題]包子大救命唷><"
發表於 : 2004-01-10 00:01
由 rokk
我仿照top5寫了下段的code
代碼: 選擇全部
$active_topics_sql="SELECT a.topic_id,a.topic_title, a.topic_replies, a.topic_last_post_id, c.post_time, d.forum_id, d.forum_name
FROM phpbb_topics a, phpbb_users b, phpbb_posts c, phpbb_forums d
where a.topic_last_post_id=c.post_id and b.user_id=c.poster_id
and d.forum_id=a.forum_id
and d.auth_view=0
ORDER BY topic_last_post_id DESC
LIMIT 5";
$active_topics = $db->sql_query($active_topics_sql);
while (($line = mysql_fetch_array($active_topics)))
{
if (strlen($line['forum_name']) > 40)
{
$line_topic_title = substr($line['forum_name'], 0, 40)." ...";
}
else
{
$line_topic_title = $line['forum_name'];
}
$lastpost = "<a href=\"".$phpbb_root_path."announce.php?f=" . $line['forum_id'] . "\" title=\"" . $line['forum_name'] ."\">" . $line_topic_title . "</a>";
$template->assign_block_vars('topicrecentpopular', array(
'TOPICSRECENT' => $lastpost)
);
}
是以最新文章來輸出該版面的id,可是我不希望版面重覆(forum_id)
請問包子大,該怎麼改><!!
發表於 : 2004-01-10 01:02
由 messagebox
給你一個建議~~
板上大大其實功力都很好~~
實在不需要特別指定某人進來看~~~
換做這樣說~~如果今天我不會~~
是不是會的人也不能進來回~~
因為他並非是你指定的人~~
我覺得這樣很不禮貌~~~
不過也謝謝你那麼看的起我~~
我盡量回囉~~
以下是我的做法~~
[php]<?
$active_topics_sql="SELECT a.topic_id,a.topic_title, a.topic_replies, a.topic_last_post_id, c.post_time, d.forum_id, d.forum_name FROM phpbb_topics a, phpbb_users b, phpbb_posts c, phpbb_forums d where a.topic_last_post_id=c.post_id and b.user_id=c.poster_id and d.forum_id=a.forum_id and d.auth_view=0 ORDER BY topic_last_post_id DESC"; //這邊作修改~不指定傳回筆數,這邊我建議用發表時間來排序
$active_topics = $db->sql_query($active_topics_sql);
while (($line = mysql_fetch_array($active_topics)))
{
//這邊開始是我補上的~用來判斷是否已經有顯示過這個看板
$f_id = $line['forum_id']; //取得目前的回傳資料中看板ID編號
if ( !isset($show_f[$f_id])){ //如果這個看板並沒有被設定過
$show_f[$f_id] = $line['forum_name']; //將看板名稱指定給變數\r
}
}
//到這邊~~~我們已經將有新文章的看板都紀錄到$show_f[??]這個變數裡了~
//現開始取出前面5筆
$new_f_count = count($show_f); //計算目前陣列變數中的數量
if ($new_f_count > 5){
$chk_count = 5; //超過5筆只取前面5筆
}else{
$chk_count = $new_f_count ; //小於5筆全部顯示\r
}
reset($show_f); //將陣列指標指到第一筆
//下面開始輸出資料
for ($i = 0;$i < $chk_count;$i++){
list($f_id, $f_name) = each($show_f);
if (strlen($f_name) > 40){
$line_topic_title = substr($f_name, 0, 40)." ...";
}else{
$line_topic_title = $f_name;
}
$lastpost = "<a href=\"".$phpbb_root_path."announce.php?f=" . $f_id . "\" title=\"" . $f_name ."\">" . $line_topic_title . "</a>";
$template->assign_block_vars('topicrecentpopular', array(
'TOPICSRECENT' => $lastpost)
);
}
//程式結束
?>[/php]
發表於 : 2004-01-10 01:24
由 rokk
哇><"
太神了,對對,用時間排序~~
不愧是包子大@@"
我知道我降子問可能會對其他人不禮貌之類的,
如有冒犯到其他大大,在這先說聲抱歉QQ"\r
我來竹貓潛水很久了@@!!
很少發表文章,大都是爬文居多。
所以知道包子大的功力。所以情急之下才會請包子大幫忙解答
我本身對PHP程式並不是很了解,只會改= ="
而且又改的不淪不類><"....
---------------------------------------------------------
上面的在打啥?(自已都快看不懂了= =!!)
另外冒味的請問一下
包子大以前也有在寫cgi吧?
是否是同一個人呢?^^"
發表於 : 2004-01-10 01:38
由 文
包子大有很多文章都有提到,他一開始只是對聊天室有興趣!所以才會去學PERL來寫聊天室。
http://onlyou.org/
對了!你網址要不要提供出來給別人看看阿~"~||很好奇你用在什麼地方!
發表於 : 2004-01-10 01:43
由 rokk
文 寫:包子大有很多文章都有提到,他一開始只是對聊天室有興趣I所以才會去學PERL來寫聊天室。
http://onlyou.org/
對了!你網址要不要提供出來給別人看看阿~"~||很好奇你用在什麼地方!
我是用在做熱門看板的連結而已\r
剛剛已經弄好了
demo:
http://www.rokk.us
有人說連不進= =!!
很奇怪@@!!
連不進的話就用
http://www.rokk.us/phpBB這個連結吧^^!!
發表於 : 2004-01-10 01:45
由 文
喔喔!不錯~不過總覺得有PLUS的味道!O(ˊ.ˋ)O
發表於 : 2004-01-10 01:48
由 rokk
文 寫:喔喔!不錯~不過總覺得有PLUS的味道!O(ˊ.ˋ)O
呵呵,回的真快@@!!
我們快把這當聊天室在用了~
之前因為懶得裝mod,所以用plus~
現在這個站是最近改的,從phpbb2.06一步一步裝上來
可能是受到之前plus的影響吧@@
搞的現在這個在跟plus好像,不過.....
plus本來就是phpbb+一堆mod起來的
所以會像也是難免的@@!!
發表於 : 2004-01-10 02:35
由 messagebox
rokk 寫:另外冒味的請問一下
包子大以前也有在寫cgi吧?
是否是同一個人呢?^^"
不清楚也~~我寫perl已經有5年~~
但不知道你說的是不是我~~
我發表過的只有一個~~ideachat V1.0X系列
之後寫的都是自己私人用途比較多~~
quote="rokk"]我本身對PHP程式並不是很了解,只會改= ="
而且又改的不淪不類><".[[/quote]
其實我剛開始學PERL時~~~也都是在網站上找資源~~
當時因為國內書籍都是翻譯書~~且都翻譯的語焉不詳~~
所以我是在沒買任何一本書的情況下學習的~~
當初一開始就像你現在這樣~~什麼都不懂~~就是拿人家的程式來加加減減~~
久了你就知道某段程式的作用~~
但是現在不同了~~現在中文書籍(PHP.PERL.甚至於ASP)
幾乎作者本身都有實務經驗~~不會再像我那時候一樣~~~
翻出來的東西幾乎是讓人想不懂時麼意思~~
真的想學~~買本書會讓你更快速進入~~
PHP真的很容易上手~~
且效能比PERL還要好(指用CGI方式的)~~
至於目前用ISAPI的PERL~~
因為我實在是沒機會用到~~~
且支援也還不完善~~
所以我是還沒測試過~~~
基本上如果沒學過PERL~~也不用在學了~~直接學PHP~~
發表於 : 2004-01-10 04:08
由 rokk
感謝包子大大的幫助。
我另外再加個Forum Views的模組
讓版面能個有計數的功能\r
再改用forum_views來做排列
剛弄完,成功嚕^^y
發表於 : 2004-01-10 05:30
由 messagebox
rokk 寫:
我是用在做熱門看板的連結而已\r
剛剛已經弄好了
剛剛去看了一下~~熱門看板的定義是最近有文章的看板??
好像有點給他解釋不過來耶~~
所謂熱門~不是應該是某段時間內最多主題或最多回應的看板~~
這樣比較符合吧~~
你可以參考文的遊戲駭客~~
他的熱門看板是看昨日一整天點閱次數~~
而熱門文章是看N天之內最多回應的文章~~
不過說實在的~~~你的討論版排的很優~~
這種配色我也很喜歡~~~