第 1 頁 (共 1 頁)
[問題]版面如何讓有雙重群組的人。一次只能看到一個。
發表於 : 2003-11-09 19:34
由 etamy
我是把論壇拿來結合遠距教學系統。
而那套系統是在使用者一登入時就必須先選擇課程。
導致我的論壇也必須按照使用者所選的課程而呈現。
本來我是利用phpbb本身的權限功能(群組)來限定版面的出現。
但是後來發現,如果該使用者本身有參加二個不同的課程(群組)
那麼不管他是選了那一個課程進來,他還是看的到另一個課程的討論。
例如︰甲學生有選修JAVA 、ASP。我利用群組功能分成JAVA群組、ASP群組
。甲學生選了JAVA課程進來。但他還是看的到ASP課程的討論。
我目前已做到限定甲學生選了JAVA課進來就只能看到JAVA課。
但老師還要求我開一公開版面。讓所有的學生都能看。~"~
可是我已做了限定~~讓學生只能觀看自己選的課。
所以二相衝突。
麻煩各位大大幫幫忙~~要怎麼解決
我使用的php論壇版本︰phpBB-2.0.6.zip
MySql版本 ︰3.23.56
上網方式 :hinet
架站空間 ︰自己本身的主機
發表於 : 2003-11-09 19:37
由 文
有網址嗎@@|| 好好奇你講的...
[問題]
發表於 : 2003-11-09 20:06
由 etamy
我目前還未和他們的結合。
只是先在自己這邊做設定。
不過我可以貼上程式碼。
其實我利用的原理是session傳進來的資料庫號碼是多少就只能看那一號開的課程。
//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
//
// End session management
//
$viewcat = ( !empty($HTTP_GET_VARS[POST_CAT_URL]) ) ? $HTTP_GET_VARS[POST_CAT_URL] : -1;
if( isset($HTTP_GET_VARS['mark']) || isset($HTTP_POST_VARS['mark']) )
{
$mark_read = ( isset($HTTP_POST_VARS['mark']) ) ? $HTTP_POST_VARS['mark'] : $HTTP_GET_VARS['mark'];
}
else
{
$mark_read = '';
}
//
// Handle marking posts
//
if( $mark_read == 'forums' )
{
if( $userdata['session_logged_in'] )
{
setcookie($board_config['cookie_name'] . '_f_all', time(), 0, $board_config['cookie_path'], $board_config['cookie_domain'], $board_config['cookie_secure']);
}
$template->assign_vars(array(
"META" => '<meta http-equiv="refresh" content="3;url=' .append_sid("index.$phpEx") . '">')
);
$message = $lang['Forums_marked_read'] . '<br /><br />' . sprintf($lang['Click_return_index'], '<a href="' . append_sid("index.$phpEx") . '">', '</a> ');
message_die(GENERAL_MESSAGE, $message);
}
//
// End handle marking posts
//
$tracking_topics = ( isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_t']) ) ? unserialize($HTTP_COOKIE_VARS[$board_config['cookie_name'] . "_t"]) : array();
$tracking_forums = ( isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f']) ) ? unserialize($HTTP_COOKIE_VARS[$board_config['cookie_name'] . "_f"]) : array();
//
// If you don't use these stats on your index you may want to consider
// removing them
//
$total_posts = get_db_stat('postcount');
$total_users = get_db_stat('usercount');
$newest_userdata = get_db_stat('newestuser');
$newest_user = $newest_userdata['username'];
$newest_uid = $newest_userdata['user_id'];
if( $total_posts == 0 )
{
$l_total_post_s = $lang['Posted_articles_zero_total'];
}
else if( $total_posts == 1 )
{
$l_total_post_s = $lang['Posted_article_total'];
}
else
{
$l_total_post_s = $lang['Posted_articles_total'];
}
if( $total_users == 0 )
{
$l_total_user_s = $lang['Registered_users_zero_total'];
}
else if( $total_users == 1 )
{
$l_total_user_s = $lang['Registered_user_total'];
}
else
{
$l_total_user_s = $lang['Registered_users_total'];
}
//