>> Installation
注意:
6.0.0 的 config.inc.php 部分需要修改才可以使用後台資料庫
升級引用:
$admincp['runquery'] = 0; // 是否允許\後台運行 SQL 語句 1=是 0=否[安全]
紅字先改為 1, 才可在後台做資料庫升級語句
下載本帖附件後解壓縮,按結構上傳附件內所有資料夾及檔案
結構如下所示:
複製內容到剪貼簿
代碼:
./論壇目錄/admin/chat_admin.inc.php
./論壇目錄/chat.php
./論壇目錄/chatwrite.php
./論壇目錄/chatlist.php
./論壇目錄/templates/default/chat.htm
./論壇目錄/templates/default/chat_msg.htm
./論壇目錄/templates/default/chatlist.htm
./論壇目錄/templates/default/index_chat.htm1. 升級資料庫 ( 2.5, 4.0.0, 4.1.0, 5.0.0RC1, 5.0.0RC2, 5.0.0, 5.5.0 裝過的不須升級 )引用:
CREATE TABLE `cdb_chat` (
`cid` mediumint(18) unsigned NOT NULL auto_increment,
`fn` varchar(15) NOT NULL,
`tn` varchar(15) NOT NULL,
`tim` varchar(20) NOT NULL,
`col` varchar(20) NOT NULL,
`says` varchar(127) NOT NULL,
`oth` varchar(1) NOT NULL,
`deltime` int(15) NOT NULL,
KEY `cid` (`cid`)
) ENGINE=MyISAM AUTO_INCREMENT=2 ;
如有亂碼請先升級
複製內容到剪貼簿
代碼:
DROP TABLE `cdb_chat`再用這個升級
引用:
CREATE TABLE `cdb_chat` (
`cid` mediumint(18) unsigned NOT NULL auto_increment,
`fn` varchar(15) NOT NULL,
`tn` varchar(15) NOT NULL,
`tim` varchar(20) NOT NULL,
`col` varchar(20) NOT NULL,
`says` varchar(127) NOT NULL,
`oth` varchar(1) NOT NULL,
`deltime` int(15) NOT NULL,
KEY `cid` (`cid`)
) ENGINE=MyISAM DEFAULT CHARSET=big5 AUTO_INCREMENT=2 ;
其中 big5 是你的資料表編碼校對, utf-8 版的則改為 utf8
其中 `says` VARCHAR(
127) 為輸入字元數,最多可顯示 255 字元,或是你可以轉換成 TEXT 型態
如果你曾經安裝過此
插件, 想變更字數
請到 phpMyAdmin -> 論壇資料庫 database -> 資料表 cdb_chat -> says 欄位
2. 修改 admincp.php
找
複製內容到剪貼簿
代碼:
} elseif($action == 'plugins' || $action == 'pluginsconfig' || $action == 'pluginsedit' || $action == 'pluginhooks' || $action == 'pluginvars') {
$cpscript = 'plugins';下面加
複製內容到剪貼簿
代碼:
// 即時聊天室 - START
} elseif($action == 'chat_one' || $action == 'chat_set') {
$cpscript ='chat_admin';
// 即時聊天室 - END3. 修改 ./include/global.func.php
找
複製內容到剪貼簿
代碼:
function debuginfo() {
if($GLOBALS['debug']) {
global $db, $discuz_starttime, $debuginfo;
$mtime = explode(' ', microtime());
$debuginfo = array('time' => number_format(($mtime[1] + $mtime[0] - $discuz_starttime), 6), 'queries' => $db->querynum);
return TRUE;
} else {
return FALSE;
}
}上面添加
複製內容到剪貼簿
代碼:
// 即時聊天室 - START
function implode_ids($array)
{
$ids = $comma = '';
if(is_array($array) && count($array))
{
foreach($array as $id)
{
$ids .= "$comma'$id'";
$comma = ", ";
}
}
return $ids;
}
function chat_msg($show_message, $url_forward = '')
{
@include_once language('messages');
if(isset($language[$show_message]))
{
eval ("\$show_message = \"".$language[$show_message]."\";");
}
if($url_forward=='')
{
$url_forward = "";
}
/*$url_redirect = '<meta http-equiv="refresh" content="1; url='.$url_forward.'">';*/
include template('chat_msg');
dexit();
}
// 即時聊天室 - END4. 修改 ./admin/menu.inc.php
查找
複製內容到剪貼簿
代碼:
array('name' => $lang['menu_ecommerce_trade_orders'], 'url' => 'admincp.php?action=tradelog')));下面添加
複製內容到剪貼簿
代碼:
// 即時聊天室 - START
showmenu($lang['chat_set'], array(
array('name' => $lang['chat_one_one'], 'url' => 'admincp.php?action=chat_one'),
array('name' => $lang['chat_set_set'], 'url' => 'admincp.php?action=chat_set')));
// 即時聊天室 - END5. messages.lang.php
查找
複製內容到剪貼簿
代碼:
'not_loggedin' => '對不起,您還沒有登錄,無法進行此操作。',在下面添加
複製內容到剪貼簿
代碼:
// 即時聊天室 - START
'chat_msg_you' => '<span style="font-weight: bold"> 你 </span>',
'chat_msg_oth' => '<span style="color: red">悄悄地</span>',
'chat_msg_to' => '對【',
'chat_msg_say' => '】說道:',
'chat_msg_think' => '】自言自語道:',
'chat_msg_noreg' => '對不起,您現在不能通過聊天室註冊,請至論壇註冊!',
'chat_msg_sorry' => '如果您還沒有註冊過本論壇,本次登錄將直接記錄您的訊息!',
// 即時聊天室 - END6. admincp.lang.php
找
複製內容到剪貼簿
代碼:
'menu_home' => '首頁',在上面添加
複製內容到剪貼簿
代碼:
// 即時聊天室 - START
'chat_tips1' => '<ul><li>聊天室後台管理 -> 您目前所在位置:<span style="color: red">記錄整理</span></li>
<li>你可以勾選欲刪除的項目。</li>',
'chat_tips2' => '<ul><li>聊天室後台管理 -> 您目前所在位置:<span style="color: red">高級管理選項</span></li>
<li>你可以指定欲刪除一定範圍的項目。</li>',
'chat_set' => '即時聊天室',
'chat_dele_err' => '<span style="color: red">您沒有指定要操作的對象,重新修改</span>',
'chat_dele_ups' => '<span style="color: blue">操作成功,所選擇的記錄已經被刪除</span>',
'chat_set_fname' => '發言人:',
'chat_set_tname' => '發言對像:',
'chat_set_dtime' => '某時間之前(選中 "全選" 刪除所有記錄):',
'chat_set_error' => '程式意外中止,請返回並稍候重試。',
'chat_one_enter' => '確認刪除',
'chat_one_return' => '重設所選',
'chat_one_one' => '記錄整理',
'chat_set_set' => '高級管理',
'chat_one_fname' => '發言人',
'chat_one_tname' => '發言對像',
'chat_one_time' => '發言時間',
'chat_one_says' => '發言內容',
'chat_set_system' => '高級管理選項',
'chat_sele_year' => ' 年 ',
'chat_sele_moon' => ' 月 ',
'chat_sele_day' => ' 日 ',
'chat_sele_hour' => ' 時 ',
'chat_sele_minute' => ' 分 ',
'chat_sele_second' => ' 秒 ',
'chat_sele_all' => ' 全選 ',
'chat_list_hide' => '<span style="color: red">***** 私聊內容,不公開 *****</span>',
// 即時聊天室 - END如果你出現以下狀況, 就是尚未完整添加以上程式碼所造成的, 請仔細閱讀安裝步驟:
7. 修改 actions.lang.php
添加
複製內容到剪貼簿
代碼:
231 => '即時聊天室',8. 修改 index.php (非必要,如果你要顯示在首頁)
找到
複製內容到剪貼簿
代碼:
$catlist = $forumlist = $sublist = $pmlist = array();上面添加
複製內容到剪貼簿
代碼:
// 即時聊天室 - START
$query = $db->query("SELECT username FROM {$tablepre}sessions");
while($onliner = $db->fetch_array($query))
{
if($onliner['username'])
{
$chatmn.="<option value=\"".$onliner['username']."\">".$onliner['username']."</option>";
}
}
// 即時聊天室 - END並在 discuz.htm 適合的位置加上
複製內容到剪貼簿
代碼:
{template index_chat}如果你不想讓遊客看到請修改為
複製內容到剪貼簿
代碼:
<!--{if $discuz_uid}-->
{template index_chat}
<!--{/if}-->更新快取 OK
備註:
1. 後台可以看見悄悄話
2. 可以導入 txt 檔,也可直接在 header.htm 添加連結
3. 後台的管理選項是在
擴展設置 項目裡,不要找不到喔!
4. 關於發言的時差部分,可以開啟 chatwrite.php
找到
複製內容到剪貼簿
代碼:
$timer = date("m月d日H:i");改為
引用:
$timer = date("m月d日H:i",time()+數值);
數值填什麼呢? 一個小時是 3600 秒,看你時差多少就成上多少,然後把數字填入紅字便可.
(eg. 3600*8=28800), 就是時差 8 小時,將數值填入 28800 便可修正時差
5. 後臺清理會出現引用:
Parse error: syntax error, unexpected T_STRING in /home/public_html/discuz/admin/global.func.php(18) : eval()'d code on line 1
本人找不到原因, 但不影響刪除資料的功能, 一樣可以刪到
希望有
高手提出~
6. 如果你不希望遊客看到
修改 chat.php
找
複製內容到剪貼簿
代碼:
$discuz_action = 231;下面添加
複製內容到剪貼簿
代碼:
if(!$discuz_uid)
{
showmessage('group_nopermission', NULL, 'NOPERM');
}7. 2007-09-21 修正 IE 7 & Firefox 2.x 下正常無法使用表情悄悄話功能
8. 你要修改聊天內容高度, 可以修改 chat.htm or index_chat.htm
找到 (修改其紅字數值即可)
引用:
<iframe name="wog_vvt5" src="chatlist.php" style="width: 100%; height: 333px"
10. 你要修改聊天內容的
字體大小跟間距可以修改 chatlist.php
找到 (修改其紅字數值即可)
引用:
$word_height = '25px'; // 設定文字之間的距離
$word_size = '10pt'; // 設定文字大小
11. 你要修改重新整理速度的話, 修改 ./templates/default/chatlist.htm
引用:
<meta http-equiv="refresh" content="10" src="chatlist.php" />
紅字數值為秒數, 預設值為 10 秒重新整理聊天內容一次
12. 如果進入聊天內容出現亂碼, 請修改 chatlist.htm
找
複製內容到剪貼簿
代碼:
<meta http-equiv="refresh" content="10" src="chatlist.php" />上面加上
複製內容到剪貼簿
代碼:
<meta http-equiv="Content-Type" content="text/html; charset=$charset" />