1
General Thai Support / การติดตั้ง FlashChat ในบอร์ด SMF
« เมื่อ: 12/12/05, 07:14:20 »ตัวอย่าง �เข้าไปที่ http://www.it-th.net/webboard �แล้วลองคลิกที่ปุ่ม


อ้างถึง
� �หมายเหตุ
� �1. เนื่องจาก FlashChat เป็นโปรแกรม Flash ประเภทหนึ่ง ซึ่งทำงานในเครื่องของผู้ใช้ด้วย
� � � �ดังนั้นในเครื่องของท่านต้องมีโปรแกรมเล่น Flash อยู่ด้วยครับ� ถ้าไม่มีจะ Download ให้โดยอัตโนมัติ
� �2. สำหรับท่านที่ติดตั้งโปรแกรมช่วย Download IDM เอาไว้ จะมีหน้าต่าง Download เปิดขึ้นมาตลอด
ส่วนที่ 1� การติดตั้ง FlashChat
1. Download FlashChat v 3.9.4.0
2. Upload ทั้ง Folder ของ FlashChat ไปไว้ใน Folder ที่ใช้ทำบอร์ด� ในที่นี้ของผมคือ forums ก็จะเป็น http://www.it-th.net/forums/FlashChat
3. ที่ช่อง Adress ใส่ URL เป็น http://ชื่อ Host/forums/FlashChat/install2.php� ในที่นี้ของผมจะเป็น http://www.it-th.net/forums/FlashChat/install2.php


อ้างถึง
� �กรณีไม่เป็นไปตามภาพข้างบน แสดงว่าท่านยังไม่ได้ตั้งค่าอนุญาตให้กับไฟล์และ Folder ทั้งหมดที่อยู่ใน forums
� �ซึ่งบาง Host สามารถตั้งค่าอนุญาตที่ Foder ของ forums เพียง Folder เดียว ก็จะครอบคลุมการอนุญาตของไฟล์หรือ Folder ทั้งหมดที่อยู่ข้างในครับ
� �ให้เปลี่ยน URL ที่ช่อง Adress เป็น http://ชื่อ Host/forums/FlashChat/install.php� ในที่นี้ของผมจะเป็น http://www.it-th.net/forums/FlashChat/install.php
� �ให้ Chmod ทุกไฟล์ที่มีคำว่า No� โดยการคลิกขวาในโปรแกรม FTP แล้วใส่ตัวเลขเป็น 777
� �เสร็จแล้วลองทำซ้ำอีกครั้งว่า Host บันทึกเป็น 777 ให้หรือยัง
� �ถ้าไม่มีปัญหาอะไร ก็ติดตั้งต่อไปได้เลยครับ
ส่วนที่ 2� การแก้ Source Code ของ SMF� เพื่อทำให้ FlashChat สามารถติดต่อกับฐานข้อมูลของ SMF ได้
Source Code ข้างล่าง ใช้สำหรับ SMF 1.0 RC1� ส่วนบอร์ดเวอร์ชันอื่นลองเทียบเคียงกันดูนะครับ
และต้องสำรองไฟล์ที่เกี่ยวข้องทั้งหมดไว้ด้วย เผื่อมีปัญหาจะได้นำกลับมาแทนลงไปครับ
อ้างถึง
� �ไฟล์ที่ต้องสำรอง
� �index.php
� �Themes/default/index.template.php
� �Themes/default/languages/Modifications.thai.php
� �Themes/default/languages/Modifications.english.php
� �Themes/default/BoardIndex.template.php
1. สร้าง Chat.php ไว้ใน Sources/� (นำ Source Code ไปวางใน Notepad แล้ว Save)
โค้ด: [เลือก]
<?php
if (!defined('SMF'))
die('Hacking attempt...');
function Chat() {
// This is gonna be needed...
loadTemplate('Chat');
}
?>
2. สร้าง Chat.template.php ไว้ใน Themes/default/ (แก้ไขตรงบรรทัดที่มี http://www.it-th.net/webboar/FlashChat/flashchat.php ให้เป็นของบอร์ดท่านเองด้วยครับ)
โค้ด: [เลือก]
<?php
// Version: 1.0 RC1; Chat
function template_main()
{
global $context, $settings, $options, $txt, $scripturl;
echo '
<script language="JavaScript" type="text/javascript"><!--
function checkAll(onOff)
{
for (var i = 0; i < document.searchform.elements.length; i++)
{
if (document.searchform.elements[i].name.substr(0, 3) == "brd")
document.searchform.elements[i].checked = onOff;
}
}
// --></script>
<form action="', $scripturl, '?action=search2" method="post" name="searchform" id="searchform">
<table width="80%" border="0" cellspacing="0" cellpadding="3" align="center">
<tr>
<td>', theme_linktree(), '</td>
</tr>
</table>
<table width="100%" border="0" cellspacing="0" cellpadding="4" align="center" class="tborder">
<tr class="titlebg">
<td>Chat</td>
</tr><tr>
<td class="windowbg">';
// load the chat
echo '<iframe width="100%" height="450" src="http://www.it-th.net/webboar/FlashChat/flashchat.php"></iframe>';
echo '
</td>
</tr>
</table>
</form>';
}
?>
3. นำ chat.gif ไปไว้ใน Themes/default/images/thai/ (Save จาก

4. แก้ไข index.php
หา
โค้ด: [เลือก]
'boardrecount' => array('Admin.php', 'AdminBoardRecount'),
ต่อด้วย�
โค้ด: [เลือก]
'chat' => array('Chat.php', 'Chat'),
5. แก้ไข Themes/default/index.template.php
หา
โค้ด: [เลือก]
<a href="', $scripturl, '?action=help" target="_blank">', ($settings['use_image_buttons'] ? '<img src="' . $settings['images_url'] . '/' . $context['user']['language'] . '/help.gif" alt="' . $txt[119] . '" style="margin: 2px 0;" border="0" />' : $txt[119]), '</a>', $context['menu_separator'];
ต่อด้วย
โค้ด: [เลือก]
// How about the [chat] button?
if ($context['user']['is_logged'])
echo '
<a href="', $scripturl, '?action=chat" target="_blank">', ($settings['use_image_buttons'] ? '<img src="' . $settings['images_url'] . '/' . $context['user']['language'] . '/chat.gif" alt="' . $txt['chat'] . '" style="margin: 2px 0;" border="0" />' : $txt['chat']), '</a>', $context['menu_separator'];
6. แก้ไข Themes/default/languages/Modifications.thai.php
หา
โค้ด: [เลือก]
?>
แทนด้วย
โค้ด: [เลือก]
// Chat Room
$txt['chat'] = 'ห้องสนทนา';
$txt['chat2'] = 'สมาชิกในห้องสนทนา';
?>
7. แก้ไข Themes/default/languages/Modifications.english.php
หา
โค้ด: [เลือก]
?>
แทนด้วย
โค้ด: [เลือก]
// Chat Room
$txt['chat'] = 'Chat Room';
$txt['chat2'] = 'Members in cheat room.';
?>
8. แก้ไข Themes/default/BoardIndex.template.php
หา
โค้ด: [เลือก]
// "Users online" - in order of activity
แทนด้วย
โค้ด: [เลือก]
$chatrequest = db_query("
SELECT COUNT(*) AS numb
FROM� smf_fc_connections
WHERE userid IS NOT NULL", __FILE__, __LINE__);
list ($chatcount) = mysql_fetch_row($chatrequest);� �
mysql_free_result($chatrequest);
� � �
if ( $chatcount == "1" ) {
$singularplural2 = "";
} else {
$singularplural2 = "s";
}
// "Users online" - in order of activity
อ้างถึง
� �หมายเหตุ
� �1. กรณีต้องการแก้ไขค่าต่างๆ ของห้อง Chat ให้ไปที่ http://ชื่อ Host/forums/FlashChat/admin.php� ในที่นี้ของผมคือ http://www.it-th.net/forums/flashChat/admin.php
� �
� � � (ไม่สามารถตั้งชื่อห้องเป็นภาษาไทยยาวๆ ได้ครับ)
� �2. ตาม Source Code ข้างบน ใช้สำหรับ SMF 1.0 RC1� แต่ถ้าเวอร์ชันสูงกว่าเช่น SMF 1.1 RC1 ก็ยังใช้ได้ครับ (เหมือนบอร์ดนี้)
� � � �แต่จะมีปัญหาตรงที่ไม่แสดงจำนวนผู้ที่กำลัง Online อยู่ในห้อง Chat ซึ่งต้องไปแก้ไข Source Code ก่อน (ยังไม่ได้แก้ไขครับ)
� �3. การติดตั้ง FlashChat อาจมีผลต่อการอนุญาตของบอร์ด SMF บางค่า เช่นการ Up รูปส่วนตัวของสมาชิก ให้ลอง login ในชื่ออื่นที่ไม่ใช่ admin
� � � �แล้วดูว่ายัง Up ได้หรือไม่ ถ้าไม่ได้ให้ไปที่ ผู้ดำเนินการ/ควบคุมการวางรูปแบบฟอรั่ม/ผู้จัดการระบบไฟล์แนบ�
� � � �เลือก ตั้งค่ารูปส่วนตัว/ [ เลือกการอนุญาตสำหรับแต่ละกลุ่ม ]� แล้วดูว่ายังเหมือนเดิมหรือไม่�
� � � �ถ้ายัง Up ไม่ได้อีก ต้องกลับไป Chmod ที่ Folder ของ avatars ให้เป็น 777
� �4. หลังจากติดตั้งเสร็จ ให้ลบ install.php, install2.php และ index.php ออกไปครับ
� �5. เมนูภาษาไทย จัดทำโดยท่าน e-music
มีปัญหาฝากคำถามไว้ครับ
