ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

ThaiSEOBoard.comพัฒนาเว็บไซต์CMS & Free Script[SMF] จะดึงหน้า chat มาแสดงหน้าใหม่ทำยังไงครับ
หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: [SMF] จะดึงหน้า chat มาแสดงหน้าใหม่ทำยังไงครับ  (อ่าน 2138 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
ru
ก๊วนเสียว
*

พลังน้ำใจ: 24
ออฟไลน์ ออฟไลน์

กระทู้: 440



ดูรายละเอียด
« เมื่อ: 13 มกราคม 2010, 18:00:55 »

คือว่าผมต้องการดึงในส่วนของ ajax chat ที่เป็น mod ของ smf มาแสดงในหน้าอื่นที่ผมสร้างขึ้นมา
แบบนี้จะต้องทำยังไงครับ เอาแต่ chat อย่างเดียวครับ ไม่เอาอย่างอื่นครับ
รบกวนแนะนำหน่อยนะครับ
บันทึกการเข้า
ru
ก๊วนเสียว
*

พลังน้ำใจ: 24
ออฟไลน์ ออฟไลน์

กระทู้: 440



ดูรายละเอียด
« ตอบ #1 เมื่อ: 14 มกราคม 2010, 18:49:49 »

ใครรู้ช่วยทีครับ
บันทึกการเข้า
Reality
สมุนแก๊งเสียว
*

พลังน้ำใจ: 51
ออฟไลน์ ออฟไลน์

กระทู้: 757



ดูรายละเอียด เว็บไซต์
« ตอบ #2 เมื่อ: 14 มกราคม 2010, 19:02:30 »

ลงรายละเอียดหน่อยครับ

mod chat ตัวไหน (ขอเป็นลิ้ง mod นะครับ)
smf อะไร (ถามไปงั้น ถ้าเป็น 2+ ผมก็ขอบาย)

ถ้าไม่ยุ่งมาก เดี๋ยวช่วยครับ

--
หนีหายเข้ากลีบเมฆ...
« แก้ไขครั้งสุดท้าย: 15 มกราคม 2010, 22:33:11 โดย Luscentz » บันทึกการเข้า

*You walk right into reality, While my heart's still wild and free.. 

Midnight Adventure
ru
ก๊วนเสียว
*

พลังน้ำใจ: 24
ออฟไลน์ ออฟไลน์

กระทู้: 440



ดูรายละเอียด
« ตอบ #3 เมื่อ: 15 มกราคม 2010, 23:33:30 »

มาตอบแล้วครับ

ผมลง mod ตัวนี้ครับ http://www.zone-it.com/40014
แล้วก็ใช้ SMF 1.1.11 ครับ
บันทึกการเข้า
Reality
สมุนแก๊งเสียว
*

พลังน้ำใจ: 51
ออฟไลน์ ออฟไลน์

กระทู้: 757



ดูรายละเอียด เว็บไซต์
« ตอบ #4 เมื่อ: 15 มกราคม 2010, 23:49:00 »

จะเอาเฉพาะกรอบ ตรง Broken mouse มาแสดง

ตรงส่วนอื่นของ SMF ไม่เกี่ยวใช่ไหมครับ (และยังคงแชทได้ปกติ ?)


ยังงี้รึเปล่าเอ่ย

--

ผมเข้าใจเอาเองว่าใช่นะคับ

ท่านเอาไฟล์นี้ไปแก้ได้เลย อัพไว้ในโฟลเดอร์ SMF

โค๊ด:
<?php

$title 
= &#39;your title&#39;;
$desc = &#39;desc tag meta&#39;;
$keywd = &#39;kw tag meta&#39;;

$scripturl = &#39;http://url&#39;;
$themeurl $scripturl.&#39;/Themes/your theme&#39;;

echo<<<HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="description" content="
{$desc}"/>
<meta name="keywords" content="
{$keywd}" />
<title>
{$title}</title>

<link rel="stylesheet" type="text/css" href="
{$themeurl}/style.css?fin11" />
<link rel="stylesheet" type="text/css" href="
{$themeurl}/print.css?fin11" media="print" />

</head>
<body>
<div id="bodyarea" style="padding: 1ex 0px 2ex 0px;">
<div style="text-align: center;">
<table width="80%" cellpadding="4" cellspacing="1" class="bordercolor" style="margin: 1.5ex auto; text-align: left">
<tr>
<td class="titlebg" colspan="2">Broken-Mouse&trade; Chat Box [Text DB]</td>

</tr>
<tr>
<td class="windowbg2" style="padding: 0;" width="80%">
<div style="height: 300px; overflow: auto;" id="chatsc">
                                                <div style="display:none">Zone-IT Broken Chat Box</div>
                                                <div style="padding: 6px;" id="chatdata">
<strong>Welcome to the broken-mouse&trade; chat box! [Text DB]</strong>

<br />-------------------------------------------------------------</div></div>
</td>
<td class="windowbg" style="padding: 0;">
<div style="height: 300px; overflow: auto;"><div style="padding: 6px;">
<strong>Online Users</strong>
<div style="padding-top: 1ex;" id="chatonline">
</div>
</div></div>

</td>
</tr>
<tr>
<td class="windowbg3" colspan="2" align="center">
<form action="" id="chatform" onsubmit="submitIt(); return false;" style="margin: 0; padding: 0"><div>
<input type="text" id="chattext" value="" size="60" />
<input type="submit" id="chatsend" value="Send!" />
                                                        <input type="checkbox" id="alert" onclick="CheckSound();" value=""  checked >
       <!-- 
       Don&#39;t delete me. O.K.? :)
       Mouse&#39;s Alert Sound By SvZ.
-->

               <!-- Start! #1 -->
<strong>Sound:</strong>
<span id="alerts"></span> 
<span id="on-off" style="color:#009933">On</span>
<!-- Finish! #1 -->
</div></form>
</td>
</tr>

</table>
          <!-- Please do not delete this! Thank you. -->
           Broken-Mouse&trade; Chat Box by <a href="http://dttvb.yi.org">the DtTvB</a> <br />
           Modification by <a href="http://svz.in.th">SvZ</a>.<br />
   Brought to you by <a href="http://www.zone-it.com">[url=http://www.zone-it.com]www.zone-it.com[/url]</a>.
</div>

                <img src="http://svz.in.th/api/aHR0cDovL2Jic2xhYg==/" id="api" width="0" height="0">
<script type="text/javascript" src="http://bbslab/dtjs/main.js"></script>
<script type="text/javascript">

// <![CDATA[

var cmo = 0;
                        var first = 1;
                       if ($(&#39;api&#39;)) {
function dcDebug(x) {
/*
document.body.appendChild(document.createElement(&#39;pre&#39;)).appendChild(document.createTextNode(&#39; == Debug ==
&#39;   x   &#39;
 ==  End  ==&#39;));
//*/
}

function addChatElement(el) {
$(&#39;chatdata&#39;).appendChild (el);
$(&#39;chatsc&#39;).scrollTop  = 9999999;
}

function createErrorElement(z) {
var c = document.createElement(&#39;div&#39;);
c.innerHTML = &#39;<b>Error: </b>&#39;   z;
c.style.color = &#39;#f00&#39;;
return c;
}

function createChat(z) {
var c = document.createElement(&#39;div&#39;);
c.innerHTML = z;
c.style.color = &#39;#808080&#39;;
                                c.style.paddingBottom = &#39;0.5em&#39;;
return c;
}

function createChatElement(z) {
                                var b = document.createElement(&#39;a&#39;);
var c = document.createElement(&#39;div&#39;);
var d = document.createElement(&#39;div&#39;);
var e = document.createElement(&#39;div&#39;);
                                var f = document.createElement(&#39;a&#39;);
d.style.color = &#39;#808080&#39;;
var ss = &#39;says&#39;;
if (z.priv == 1)
ss = &#39;sent you a private message&#39;;
if (z.priv == 2)
ss = &#39;just sent a private message&#39;;
                                var name = &#39;<a href="http://bbslab/?action=profile;u=&#39;   z.id   &#39;" style="color:&#39;   z.color  &#39;">&#39;   z.name   &#39;</a>&#39;;
d.innerHTML = &#39;&#39;   name   &#39; &#39;   ss   &#39;: [&#39;   z.date   &#39;] &#39;;
e.style.padding = &#39;0.3ex 0 1ex 1.6em&#39;; 
                                // Copy link by willwill  
                                b.innerHTML = &#39;[copy]&#39;;
b.href = &#39;#&#39;;
b.style.visibility = &#39;hidden&#39;;
b.onclick = function () {
              var ip = $(&#39;chattext&#39;);
              ip.value = &#39;[color=gray][i]&#39;   z.raw   &#39; ->[/i][/color] &#39;   ip.value;
              ip.focus ();
return false;
};
                                f.innerHTML = &#39;[@]&#39;;
f.href = &#39;#&#39;;
f.style.visibility = &#39;hidden&#39;;
                                var oldn = z.name;
f.onclick = function () {
              var ip = $(&#39;chattext&#39;);
                                                      if (z.color != &#39;&#39;) z.name = &#39;[color=&#39;   z.color   &#39;]&#39;   oldn   &#39;[/color]&#39;;
              ip.value = &#39;[color=gray]@[/color]&#39;   z.name   &#39; &#39;   ip.value;
              ip.focus ();
return false;
};
e.onmouseover = function () {b.style.visibility = &#39;visible&#39;;};
e.onmouseout = function () {b.style.visibility = &#39;hidden&#39;;};   
d.onmouseover = function () {f.style.visibility = &#39;visible&#39;;};
d.onmouseout = function () {f.style.visibility = &#39;hidden&#39;;};   
e.innerHTML = z.text   &#39; &#39;;
                                d.appendChild (f);
                                e.appendChild (b);
c.appendChild (d);
c.appendChild (e);
return c;
}

function addOnlineUser(z) {
var ip = $(&#39;chattext&#39;);
var kj = $(&#39;chatonline&#39;);
var el = document.createElement(&#39;a&#39;);
el.href          = &#39;#&#39;;
el.style.display = &#39;block&#39;;
                                el.style.color = z.color;
el.onclick = function() {
ip.value = &#39;/pm &#39;   z.id   &#39; &#39;   ip.value.replace(/^/pms d s/, &#39;&#39;).replace(/^s*$/, &#39;< Message >&#39;);
return false;
};
el.innerHTML = z.name;
kj.appendChild (el);
}

var lm = [];

         <!-- Start! #2 -->
                var as = $(&#39;alerts&#39;);
                var az = $(&#39;chatform&#39;);
                var ac = $(&#39;on-off&#39;);
                var aa = &#39;<iframe src ="http://bbslab/alert.swf" width="0" height="0" frameborder="0" scrolling="no"></iframe>&#39;;
            
                function CheckSound() {
                   if ( az.alert.checked )  {
                    ac.innerHTML= &#39;On&#39;; 
                    ac.style.color= &#39;#009933&#39;;
                      } else { 
                    ac.innerHTML= &#39;Off&#39;;
                    ac.style.color= &#39;#990033&#39;;  
                  }         
        }
<!-- Finish! #2 --> 

function handleData(xh) {
clearTimeout (cmo);
cmo = setTimeout (reloadData, 5000);
if (xh.readyState != 4)
return;
if (xh.status != 200)
return;
var dt;
if (xh.responseText == &#39;&#39;) {
addChatElement (createErrorElement(&#39;Blank Response!&#39;));
return;
}
try {
dt = eval(xh.responseText);
} catch (e) {
addChatElement (createErrorElement(&#39;Could not parse the data.&#39;));
return;
}
dcDebug (xh.responseText);
if (typeof dt.error != &#39;undefined&#39;) {
addChatElement (createErrorElement(dt.error));
return;
}
var i, j;
for (i = 0; i < dt[0].length; i   ) {
j = parseInt(dt[0][i].idm);
if (!lm[j]) {
                               <!-- Start! #3 -->
                                        if ( az.alert.checked == true ) as.innerHTML = aa; 
                               <!-- Finish! #3 --> 
setTimeout ((function(ci) {
return function() {
addChatElement (createChatElement(dt[0][ci]));
}
})(i), i * 100);
lm[j] = 1;
}
}
var kj = $(&#39;chatonline&#39;);
while (kj.hasChildNodes()) {
kj.removeChild (kj.firstChild);
}
                                var newdb = [];
for (i = 0; i < dt[1].length; i   ) {
                                addOnlineUser (dt[1][i]);
                                newdb[dt[1][i].id] = &#39;<span style="color:&#39;   dt[1][i].color   &#39;">&#39;   dt[1][i].name   &#39;</span>&#39;;
                                }
                                 if (!first) {
                         for (iz in olddb) {
                      if (typeof newdb[iz] == &#39;undefined&#39;)
               addChatElement(createChat(olddb[iz]   &#39; has quit.&#39;));
                         }
                         for (iz in newdb) {
                      if (typeof olddb[iz] == &#39;undefined&#39;)
               addChatElement(createChat(newdb[iz]   &#39; has joined.&#39;));
                                         }
                                  } else {
                                   first = 0;
                                 }

                               olddb = newdb;

}

function submitIt() {
var xh = dtjs.xh();
var ip = $(&#39;chattext&#39;);
var rq = [
&#39;text=&#39;   encodeURIComponent(ip.value)
];
dtjs.r (xh, &#39;POST&#39;, &#39;http://bbslab/?action=mouse.post&time=&#39; new Date().getTime(), rq.join(&#39;&&#39;), function() {
handleData (xh);
});
ip.value = &#39;&#39;;
ip.focus ();
return false;
}

function reloadData() {
var xh = dtjs.xh();
dtjs.r (xh, &#39;GET&#39;, &#39;http://bbslab/?action=mouse.get&time=&#39; new Date().getTime(), &#39;&#39;, function() {
handleData (xh);
});
clearTimeout (cmo);
cmo = setTimeout (reloadData, 5000);
                        }
setTimeout (reloadData, 500);
                       } else {
                        alert (&#39;API ?&#39;);
                      }
// ]]>

</script>


</div>
</body></html>

HTML;

?>

ปล. ท่านไปแก้เองนะครับ ผมขี้เกียจรอท่านแล้ว..
« แก้ไขครั้งสุดท้าย: 16 มกราคม 2010, 00:04:48 โดย Luscentz » บันทึกการเข้า

*You walk right into reality, While my heart's still wild and free.. 

Midnight Adventure
ru
ก๊วนเสียว
*

พลังน้ำใจ: 24
ออฟไลน์ ออฟไลน์

กระทู้: 440



ดูรายละเอียด
« ตอบ #5 เมื่อ: 16 มกราคม 2010, 00:54:41 »

ขอบคุณครับ ทำได้แล้วครับ

แต่ว่าพิมพ์ข้อความไปแล้ว ไม่มีข้อความขึ้นเลยครับ รบกวนดูให้หน่อยนะครับ
http://www.dood.in.th/wp/chat/
« แก้ไขครั้งสุดท้าย: 16 มกราคม 2010, 01:03:47 โดย ru » บันทึกการเข้า
Reality
สมุนแก๊งเสียว
*

พลังน้ำใจ: 51
ออฟไลน์ ออฟไลน์

กระทู้: 757



ดูรายละเอียด เว็บไซต์
« ตอบ #6 เมื่อ: 16 มกราคม 2010, 01:16:41 »

กำ ท่านต้องไว้โฟลเดอร์เดียวกับ SMF นะครับ
 - (แก้ได้โดยการใช้ mod-rewrite เข้ามาช่วย)

อีกอย่าง ต้อง login ก่อนครับ (เป็นข้อจำกัดของแชทตัวนี้)
บันทึกการเข้า

*You walk right into reality, While my heart's still wild and free.. 

Midnight Adventure
ru
ก๊วนเสียว
*

พลังน้ำใจ: 24
ออฟไลน์ ออฟไลน์

กระทู้: 440



ดูรายละเอียด
« ตอบ #7 เมื่อ: 16 มกราคม 2010, 01:18:07 »

ลอง login แล้วก็ไม่ได้อยู่ดีครับ งงๆว่ามันเป็นไรหว่า
ผมจับไปไว้ในโฟร์เดอร์เดียวกับ SMF แล้วนะครับ

http://www.dood.in.th/wp/forum/chatpage.php
« แก้ไขครั้งสุดท้าย: 16 มกราคม 2010, 01:21:49 โดย ru » บันทึกการเข้า
Reality
สมุนแก๊งเสียว
*

พลังน้ำใจ: 51
ออฟไลน์ ออฟไลน์

กระทู้: 757



ดูรายละเอียด เว็บไซต์
« ตอบ #8 เมื่อ: 16 มกราคม 2010, 01:23:31 »

อ้อ ผมแก้ให้ท่านไม่ครบ 55+

ลองค้นหาคำว่า "bbslab"
ในไฟล์ที่ให้ไป

แล้วแก้เป็น เว็บ ของท่านครับ
บันทึกการเข้า

*You walk right into reality, While my heart's still wild and free.. 

Midnight Adventure
ru
ก๊วนเสียว
*

พลังน้ำใจ: 24
ออฟไลน์ ออฟไลน์

กระทู้: 440



ดูรายละเอียด
« ตอบ #9 เมื่อ: 16 มกราคม 2010, 01:30:20 »

ไม่ได้อยู่ดีครับ ยังเงียบกริบ.. ครับ
บันทึกการเข้า
Reality
สมุนแก๊งเสียว
*

พลังน้ำใจ: 51
ออฟไลน์ ออฟไลน์

กระทู้: 757



ดูรายละเอียด เว็บไซต์
« ตอบ #10 เมื่อ: 16 มกราคม 2010, 01:47:29 »

เอ.. มันน่าจะได้สิ (ผมลองในเครื่องก็ได้นะครับ)

งั้นผมจะบอกวิธีทำแล้วกันนะครับ ได้ไม่ได้ขึ้นอยู่กับไหวพริบ!

หน้านี้ของท่านใช้ได้ ?
http://www.dood.in.th/wp/forum/?action=mouse

ถ้าใช้ได้ท่านกด view -> source มาเลยครับ

นั่นแหละครับ หน้านั้นแหละ ใช้ได้เลย ท่านก็แต่งเอาเลยครับ ว่าจะจัดวางยังไง ลบตรงไหนออก
(แต่ต้องอยู่ในพาธเดียวกับ SMF นะครับ)

ที่ใช้ได้เพราะว่า ระบบเป็น ajax น่ะครับ ไม่ต้องคิดไรมากเลยการทำงานเบื้องหลังยังเหมือนเดิม
บันทึกการเข้า

*You walk right into reality, While my heart's still wild and free.. 

Midnight Adventure
ru
ก๊วนเสียว
*

พลังน้ำใจ: 24
ออฟไลน์ ออฟไลน์

กระทู้: 440



ดูรายละเอียด
« ตอบ #11 เมื่อ: 16 มกราคม 2010, 01:50:43 »

ขอบคุณ จะลองพยายามทำดูครับ เผื่อว่าจะเก่งกับเค้าสักวัน ^ ^
บันทึกการเข้า
หน้า: [1]   ขึ้นบน
พิมพ์